[英]How to restrict ScheduledExecutorService
我有以下代碼,每20分鍾調用一次任務,它的工作正常。 現在,在此之上,我希望它只能在0900到1800之間工作
ScheduledExecutorService scheduler = Executors.newSingleThreadScheduledExecutor();
scheduler.scheduleWithFixedDelay(new CSDelightAlertTask(), 0, 20, TimeUnit.MINUTES);
最簡單的解決方案是將CSDelightAlertTask
包裝在僅當且僅當時間介於0900和1800之間時才運行基礎任務的包裝器中。
如果可以使用外部庫,則cron4j可以幫助您進行這種復雜的調度。 如果這是一個關閉可能不值得。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.