You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Rust中job_scheduler每日定时任务无执行问题排查

解决Rust job_scheduler 1.2.1每日任务调度无响应的问题

job_scheduler = "1.2.1"依赖的cron表达式采用6字段格式,固定顺序为:秒 分 时 日 月 周,不支持第7个字段(年)。

  • 你之前使用的0 30 8 * * * *多了1个多余的星号(第7个字段),库无法解析该格式,直接导致任务不触发。
  • 尝试的"0 30 8 * * * "末尾带了空格,会被判定为无效格式,同样无法触发任务。

正确的每日早8:30执行的表达式应为无多余空格的6字段格式:

"0 30 8 * * *"

验证示例代码

use job_scheduler::JobScheduler;
use std::time::Duration;

fn main() {
    let mut scheduler = JobScheduler::new();

    scheduler.add(
        job_scheduler::Job::new("0 30 8 * * *".parse().unwrap(), || {
            println!("每日8:30执行的任务触发了");
        })
    );

    loop {
        scheduler.tick();
        std::thread::sleep(Duration::from_secs(1));
    }
}

额外检查点

如果任务仍无响应,排查以下两点:

  • 系统时间是否正确:job_scheduler默认使用本地时间,确认时区与预期一致;
  • 调度器tick()调用是否被阻塞:必须保证tick()被定时调用,否则任务无法触发。

内容的提问来源于stack exchange,提问作者user14603676

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 19:12:06