Skip to main content
Browse the docs

The developer docs are currently available in Chinese only. The SDK, the CLI and every code sample work the same in any language.

Chapter 9

后台任务

background 的语义与注意事项

JSON
"background": { "action": "refresh", "everyMinutes": 360 }
  • 插件启用、用户已登录、日历加载完之后,宿主在 1 分钟后执行一次,之后每隔 everyMinutes 执行一次(30–10080 分钟)。
  • 按界面来源执行(不弹确认):用户启用插件、自己添加了订阅,就是授权过了。所以后台命令只能做用户已经同意过的事 (刷新已添加的订阅),不能替用户做新的决定。
  • 必须是声明过的 write 命令;它运行在 write 模式。
  • 要快:一次执行尽量在一分钟内结束(UniMind 的工具调用是串行的,一次后台刷新不能把后面的调用堵上几分钟); 给网络请求设并发上限与总时限,超时按「这次读不到」处理,绝不因为超时删数据。
  • 失败只记日志,不打扰用户;把错误状态写进存储,让面板显示「上次同步失败:…」。
  • 同一时间同一插件的后台任务与用户操作可能并发,数据读改写要串行(见命令 · 并发)。