0.2.1 • Published 3 years ago
@domain.js/cron v0.2.1
@domain.js/cron 计划任务允许linux 计划任务格式的时刻表,也允许时间间隔来控制
Installation
cnf
专属配置名称 cron
| 名称 | 类型 | 必填 | 默认值 | 描述 | 样例 |
| ---- | ---- | ---- | ------ | ---- | ---- |
| tz | string | 否
| Asia/Beijing
| 时区设置,在linux风格的时刻表会用到 | Europe/London |
deps
模块名 | 别名 | 用到的方法 | 描述 |
---|---|---|---|
cia | 无 | regist , link , submit | @domain.js/cia 模块 |
method
- regist 注册计划任务
- start 启动计划任务系统
- getStats 获取计划任务统计信息
Sample code
const Cron = require('@domain.js/cron');
const cia = Cia(); // cia 模块初始化, 这里是伪代码
const cron = Cron({ cron: { tz: 'Asia/Beijing' } }, { cia });
// 计划任务注册 cron.regist(/* 任务名称 */, /* 时间间隔或时刻表 */, /* 第一次开始与进程启动后多久 */);
cron.regist('上厕所', '2 hours', '1 hours'); // 每个两小时上一次测试,进程启动后一个小时执行第一次
cron.regist('吃早饭', '0 20 07 * * *'); // 每天早上七点二十分吃早餐
// 注册完毕后,启动计划任务, 启动以后禁止注册
cron.start();
// 检测触发,执行对应任务, 这里利用了 cia 的能力
cia.link(`Cron::上厕所`, 'cronJob', (times) => {
// 上厕所,嘘嘘 第 ${times} 次
});
cia.link(`Cron::吃早饭`, 'cronJob', (times) => {
// 上早饭 第 ${times} 次
});
// 获取计划任务执行统计
cron.getStats();