UNPKG

@thatcompany/ts-tool

Version:

基于TypeScript编写的工具库

38 lines 1.41 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ISCronTaskService = void 0; const ICronTaskService_1 = require("./ICronTaskService"); /** * 单例调度服务接口 * * 记得实现 @TaskRegister装饰器修饰的类,否则不会被扫描到 * * @example * ```typescript * @TaskCronService * class TestCronTaskService extends ISCronTaskService { * NAME: string = '单例测试'; * DESCRIPTION: string = '测试单例调度服务'; * CRON_EXP: string = '*\/10 * * * * *'; * async collection(): Promise<void> { * this.addPending(1, '单例调度任务: ' + this.NAME + '(' + this.DESCRIPTION + ')') * } * async execute(task: TThreadChild<any>): Promise<TCronExecuteResult<any>> { * return { task, success: true }; * } * override async executeEnd(data: any): Promise<void> { * Logger.info(data.task, data.success); * } * } * ``` */ class ISCronTaskService extends ICronTaskService_1.ICronTaskService { // 调度任务的并发等待时间 WAIT_TIME = { execute: 100, plus: 100, repeat: 1000 }; // 如果单例也有多个任务对象,则需要重写该方法,默认只添加一个任务 async collection() { this.addPending(1, '单例调度任务: ' + this.NAME + '(' + this.DESCRIPTION + ')'); } } exports.ISCronTaskService = ISCronTaskService; //# sourceMappingURL=ISCronTaskService.js.map