我有一個用Spring創建的儀表板,必須控制某些任務執行。基本思想是有一個線程將這些任務定期發送到遠程跟蹤器。我怎樣才能實例這個線程?我一直在讀一點,有些人說這不是一個好主意,使用線程。這會對Spring生命週期造成問題嗎?有另一種方法來定期調用方法嗎?在Spring中實例化新線程以定期執行任務
2
A
回答
5
Spring支持任務調度。在這裏找到更多的信息:
例如你可以在你的應用環境,像這樣配置的預定任務:
<task:scheduled-tasks scheduler="myScheduler">
<task:scheduled ref="beanA" method="methodA" fixed-delay="5000"/>
</task:scheduled-tasks>
<task:scheduler id="myScheduler" pool-size="10"/>
2
當使用Spring,你可以嘗試Spring自己的任務調度。一個很好的教程可以找到 here。
我已經使用過這個,它工作得很好。
0
您可以使用@Scheduled註釋或者您可以創建自己的線程並使其休眠並再次定期調用。
2
如果您需要一個功能強大的任務調度程序,它可以與Spring完美協作,請使用quartz調度程序。您可以配置要用於調度程序的線程數量等等。 這裏沒有線程控制令人頭疼的石英調度程序很好地管理它。
它可以在春天被配置爲每分鐘從上午12點多的工作日程複雜像
觸發到凌晨4點在每月1日。
http://quartz-scheduler.org/瞭解更多信息。
0
集成彈簧與石英,讓您的生活輕鬆滿足所有計劃的任務要求。這裏是一個教程,以幫助您處理:
http://www.mkyong.com/spring/spring-quartz-scheduler-example/
0
在我的情況,我想運行一個代碼每月一次
比方說,我想執行remove
功能是EmptyScopesRemoverImpl
類
所以在Spring XML中添加此
<task:scheduled-tasks>
<task:scheduled ref="EmptyScopesRemover" method="remove" cron="0 0 0 1 * *"/>
</task:scheduled-tasks>
約更多信息的值和它需要檢查的內容https://stackoverflow.com/a/32521238/4251431
現在,該值意味着運行功能the midnight on the first day of every month
。
注意EmptyScopesRemover
只是一個bean是指類
相關問題
- 1. 使Spring任務與任務執行器線程一起運行
- 2. 重新實例化線程
- 3. 線程任務不在IIS中執行
- 4. 在Sencha Touch中定期執行任務
- 5. 定期執行任務
- 6. 在iOS中定期在後臺線程中運行任務
- 7. 在UI線程上執行長任務
- 8. 在另一個線程執行任務
- 9. OpenMP任務 - 阻止特定線程執行任務的方式?
- 10. 定時器(線程)會在任務重新執行的等待期之前完成任務嗎?
- 11. 構建應用程序以定期在服務器上執行任務
- 12. JavaFX UI在執行新線程任務時凍結
- 13. 在android中執行週期性任務
- 14. Java線程任務的併發執行
- 15. 多線程執行不同任務
- 16. 執行任務時聽線程
- 17. Android:創建一個定期運行並執行UI任務的後臺線程?
- 18. 暫停線程,而另一個線程正在執行任務
- 19. 如何定期執行任務?
- 20. 芹菜定期任務不執行
- 21. 通過Spring實例化任意類
- 22. 在後臺任務中實例化WriteableImage任務
- 23. 將活動實例化爲新的任務和進程
- 24. 在多線程環境中並行執行每個子任務
- 25. 延遲任務:在Spring 3中首次執行調度程序
- 26. 在Java應用程序中強制定期執行週期性任務
- 27. 限制Spring Cloud任務實例
- 28. 調用一個重新實例化的異步任務失敗,'任務已經執行'
- 29. Android的線程實例化
- 30. 如何在更新UITableView時在後臺線程中執行網絡任務?
這就是我上面寫的,對不對? – 2013-05-02 14:08:25