[英]stop Spring Scheduled execution if it hangs after some fixed time
[英]Spring - find execution time of @Scheduled
我的bean中有一個方法,該方法定期執行:
@Scheduled(fixedRate = xx)
public void runPeriodically() {
// do smt...
}
現在,我想找出其上一次執行的時間。 我怎樣才能做到這一點? 我閱讀了有關Trigger
接口的信息,但我不清楚如何根據需要使用它。
我可能會缺少一些東西,但是簡單的實例變量不會完成這項工作嗎?
private Date lastRun;
@Scheduled(fixedRate = xx)
public void runPeriodically() {
// do smt...
lastRun = new Date();
}
至於Trigger
界面:不能將@Scheduled
與Trigger
界面結合使用。 至少不是開箱即用。 如果要使用Trigger
,則需要使用TaskScheduler
並將其“ Trigger
”給Trigger
對象 。 例如
scheduler.schedule(task, new CronTrigger("0 15 9-17 * * MON-FRI"));
CronTrigger
顯然實現了Trigger
,因此您在那里擁有所有接口方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.