UNPKG

@thatcompany/ts-tool

Version:

基于TypeScript编写的工具库

55 lines (54 loc) 1.15 kB
/** * 调度任务的并发等待时间 */ export type TCronPollingTime = { /** * 启动下一个并发队列任务的间隔时间 * 在重量级任务时,可以适当调大该值,以削减CPU和内存资源的峰值 * 单位:毫秒 */ execute: number; /** * 任务重复的轮询间隔时间 * 单位:毫秒 */ repeat: number; /** * 队列等待更新时间 * 单位:毫秒 */ plus: number; }; /** * 调度任务的重复丢弃策略 */ export type TDiscard = { /** * 丢弃重复的挂起任务 */ pending: boolean; /** * 丢弃重复的预备任务 */ ready: boolean; /** * 丢弃重复的运行任务 */ running: boolean; }; export type TCronExecuteResult<T = any> = { task: TThreadChild<T>; success: boolean; startTime?: number; endTime?: number; elapsedTime?: number; message?: string; }; export type TCronWorkerParam<T = any> = { task: T; execute: (task: T) => Promise<TCronExecuteResult<T>>; }; export type TThreadChild<T = any> = { key: any; value: T; };