[英]How do I manage Java timer tasks?
我正在尋找有關如何管理多個計時器任務的指南。 我希望能夠動態創建計時器,然后在每個計時器完成時將其重置。
例:
計時器1-執行動作x-重置以在30分鍾內再次執行動作x
計時器2-執行操作y-在10分鍾內再次重置為執行操作y
您想要的是ScheduledExecutorService 。
它允許您安排任務以給定的時間或給定的速率運行。
以下代碼創建一個計時器,並在500 ms的初始延遲后每1000 ms執行一次。 您可以通過這種方式輕松定義兩個或多個計時器。
TimerTask task = new TimerTask() {
@Override
public void run() {
System.out.println( "exec" );
}
};
new Timer().scheduleAtFixedRate( task, 500, 1000 );
也許值得回顧一下Quartz Enterprise Job Scheduler
Quartz是功能齊全的開源作業調度系統,可以與幾乎所有J2EE或J2SE應用程序集成或一起使用-從最小的獨立應用程序到最大的電子商務系統。 Quartz可用於創建簡單或復雜的計划,以執行數以萬計,數以萬計的工作。 任務定義為標准Java組件或EJB的作業。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.