2013-03-17 112 views
9

每50秒我正在使用Quartz用cron表達式每50秒我的工作:cron表達式的石英

Cron_Expression = "0/50 * * * * ?" 

會發生什麼事是,我的工作在秒運行一次:50,60,50 ,60,...而不是每隔50秒!並且不在第二個「0」處運行。

從0開始,每50秒一次正確的cron表達式是什麼?

+0

你試過*/50而不是0/50嗎? – NilsH 2013-03-17 07:03:42

+0

它是一樣的! ,有沒有其他想法? – Yosefarr 2013-03-17 13:01:22

+0

看看這裏Cron表達式生成器 - 石英https://www.freeformatter.com/cron-expression-generator-quartz.html – 2017-10-30 04:13:19

回答

9

'/'語法指定期間的增量而不是重複間隔。承認一個微妙和混亂的差異。

在這種情況下,在1分鐘內只有一個可用增量(50秒)。第一個數字指定開始的值,在這種情況下爲0.在'/'之前指定'*'等同於指定0.因此,作業只會在分鐘(0和60可互換)和50秒。

如果週期可以除以多個增量,例如0/10,那麼它將在每個時間點發射,例如在10,20,30等秒。

如果您希望工作定期觸發,那麼您可以使用指定repeatInterval的Quartz SimpleTrigger