簡體   English   中英

如何創建在 Quartz 中等待的觸發器

[英]How to create a trigger that waits in Quartz

我創建了一個工作和一個觸發器

var jobKey = new JobKey("awesome job", "awesome group");
q.AddJob<HelloWorldJob>(jobKey, j => j
.WithDescription("my awesome job"));

q.AddTrigger(opts => opts
    .ForJob(jobKey)
    .WithIdentity("HelloWorldJob-trigger")
    .WithSimpleSchedule(x => x.WithIntervalInSeconds(5))

我可以在這樣的控制器中調用它

    var scheduler = await schedulerFactory.GetScheduler();

    await scheduler.TriggerJob(jobKey);

但問題是作業在應用程序啟動時開始

有沒有辦法讓觸發器保持空閑? 所以我可以稍后手動觸發它?

我發現了一些類似的問題,建議在很久以后將StartAt方法放入某個日期,但是這些問題已經過時了,也許有更合適的方法嗎?

不要添加觸發器,當您想手動觸發作業時調用 IScheduler.TriggerJob。 在調度程序 init 中將作業添加為持久作業,因此它不需要觸發器引用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM