ScheduleClock
Defined in: packages/rxdb-plugin-trigger/src/core/schedule-clock.ts:16
rxdb-plugin-trigger - RxDB 触发器插件
基于 RxDB 的分布式任务队列和定时调度插件,支持:
- 任务触发与批量触发(trigger / triggerAndWait / batchTrigger)
- 定时 Cron 调度(schedules API)
- 实体变更触发(entityTriggers API)
- DAG 工作流执行(WorkflowExecutor)
- 多标签页协作与领导选举
- 幂等性、并发控制、重试机制
Example
import { rxDBPluginTrigger } from 'rxdb-plugin-trigger';
const db = await createRxDatabase({ ... });
db.addPlugin(rxDBPluginTrigger());
const task = db.trigger.task({
id: 'my-task',
run: async (payload, ctx) => {
console.log('Running task:', payload);
return { result: 'done' };
}
});
// 触发任务
await task.trigger({ data: 'hello' });
// 触发并等待结果
const result = await task.triggerAndWait({ data: 'hello' });
Constructors
Constructor
new ScheduleClock(
leaderElection,
runManager,
tickInterval?,
onQueueReady?): ScheduleClock;
Defined in: packages/rxdb-plugin-trigger/src/core/schedule-clock.ts:23
Parameters
| Parameter | Type | Default value |
|---|---|---|
leaderElection | LeaderElection | undefined |
runManager | RunManager | undefined |
tickInterval | number | 2000 |
onQueueReady? | () => void | undefined |
Returns
ScheduleClock
Methods
destroy()
destroy(): void;
Defined in: packages/rxdb-plugin-trigger/src/core/schedule-clock.ts:48
destroy - 停止调度时钟
Returns
void
setScheduleManager()
setScheduleManager(manager): void;
Defined in: packages/rxdb-plugin-trigger/src/core/schedule-clock.ts:33
Parameters
| Parameter | Type |
|---|---|
manager | ScheduleManager |
Returns
void
start()
start(): void;
Defined in: packages/rxdb-plugin-trigger/src/core/schedule-clock.ts:38
start - 启动调度时钟
Returns
void