[英]Distinction between ScheduledExecutorService and rolling your own Runnable with Thread.sleep()
使用ScheduledExecutorService
的scheduleAtFixedRate()
運行一段代碼而不是創建一個新的Runnable
有什么好處,該 Runnable 有一個永久循環加上一個Thread.sleep()
導致線程按預期休眠時期?
其中一種方法是否有性能提升?
使用ScheduledExecutorService
的最大好處是您不需要編寫代碼,而且它經過了很好的測試。 它還支持立即取消任務,您可以安排多個任務。
另一個好處是其他開發人員知道ScheduledExecutorService
做了什么,他們可以閱讀 javadoc,他們可以在公共論壇上提出問題並獲得幫助,而對於自定義代碼則更難獲得幫助。
ScheduledExecutorService的 javadoc 也有一個很好的例子,說明如何創建一個每 10 秒執行一個小時,然后被取消的任務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.