请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

請問老師為什麼我有兩個job在quartz 運行,兩個job 都以1分鐘啟動一次運行,但運行一段時間後有個job在執行完後的下一次不再被trigger

請問老師為什麼我有AB兩個job在quartz schedule 裡運行,兩個job 都以1分鐘啟動一次運行,但運行一段時間後有個job觀察log都會在執行完後的下一次不再被trigger,檢查quartz運行job卻兩個job都還在啟動容器內,這要怎麼檢查問題

正在回答 回答被采纳积分+3

1回答

凌波微步 2019-08-26 08:05:53

有可能是你的任务,每执行一次  都要用超过1分钟的时长,导致触发了misfire机制。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕勒5176038 #1
    请问老师如果因为常发生misfire,会造成trigger在执行完某次job完成后就不在触发trigger的原因是什么?除了避免misfire外还可以怎么处理这个问题 谢谢
    回复 有任何疑惑可以回复我~ 2019-08-26 23:03:05
  • 凌波微步 回复 提问者 慕勒5176038 #2
    保证任务在1分钟内执行完,如果执行不完,可以单起一个线程去执行,保证主线程(任务线程)在1分钟内结束。
    
    注意:这种方式,需保证多个任务之前不会有影响。当多个线程同时执行时,保证线程安全。
    回复 有任何疑惑可以回复我~ 2019-08-30 07:47:30
  • 提问者 慕勒5176038 回复 凌波微步 #3
    老师 你好你说的"可以单起一个线程去执行,保证主线程(任务线程)在1分钟内结束"。
    不太明白这个意思,请问有范例可以参考吗?
    谢谢
    回复 有任何疑惑可以回复我~ 2019-09-04 22:21:40
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信