1
A
回答
0
用一個定時器。它就在那裏,專門爲此目的,那麼爲什麼你不使用它?
3
通常,如果他們滿足您的需求,請使用已經存在的組件。然而,System.Threading.Timer
使用.NET線程池,所以任何下列條件將使其成爲一個可憐的候選人:
- 你需要一個STA線程(所有
ThreadPool
線程都是MTA) - 你需要的所有出現在同一個線程
- 你要分配一個特定的優先級上的重複任務運行(更低或更高),以您的任務
- 你的任務是特別長時間運行或使用非平凡塊
0
您引用的兩種方法用於不同的結果。
定時器將觸發該事件並按計劃的時間間隔調用您的方法。他們可能會調用你的方法,而它的另一個實例正在運行,除非你在開始處理(DoWork)時停止定時器,並在你完成後再次啓動它(但你可能會錯過定時事件)。
循環和睡眠的方法在忙時不會被調用。這裏的「優勢」是您可以使用DoWork,然後再次發現下一個計時器事件已經通過並且DoWork立即生效。另一種方法是,無論您的DoWork方法花了多長時間,您都有休息時間可供您休息一段指定的時間。
相關問題
- 1. 實現此算法的最佳方法是什麼?
- 2. 什麼是實現WebSphere的RTC構建的最佳方法
- 3. 在服務器中實現AutoComplete的最佳方式是什麼?
- 4. 在PHP中實現控制器的最佳方式是什麼?
- 5. 實現記錄鎖定的最佳方式是什麼?
- 6. 什麼是實現樹視圖的最佳方法?
- 7. 什麼是同步這個事件實現的最佳方法
- 8. 什麼是實現CSS樣式的最佳方法?
- 9. 實現AJAX超時的最佳方式是什麼?
- 10. Multigraph的最佳實現是什麼?
- 11. 製作線程循環的最佳方法是什麼?
- 12. 什麼是WPF多線程的最佳方法
- 13. 在Android中線程的最佳方法是什麼?
- 14. 管理容器中線程池的最佳做法是什麼?
- 15. 什麼是縮放實時白板內容的最佳方法
- 16. 實現OpenID服務器(最好是Ruby)的最佳方式是什麼?
- 17. 使用2個返回實現方法的最佳方法是什麼?
- 18. 在C++中實現這種工作流程的最佳方法是什麼?
- 19. 實時遊戲線程之間共享對象的最佳做法是什麼
- 20. 用TeamCity定義預處理器的最佳方法是什麼?
- 21. 處理計時器的最佳方法是什麼?
- 22. 在運行時創建綁定的最佳方法是什麼?
- 23. 註冊過程開始時間的最佳方法是什麼?
- 24. 什麼是實施在線測試的最佳方式?
- 25. iPhone上的標準/最佳路線實施方式是什麼?
- 26. 在Delphi中實現C#的BackgroundWorker的最佳方式是什麼?
- 27. 實現凌亂數據庫實體框架的最佳方法是什麼?
- 28. 什麼是實現遊戲計時器的最有效方式
- 29. 什麼是搜索實現在.NET中的FCL特定接口的類的最佳方法是什麼?
- 30. 實現快捷方式編輯器TextBox的最佳方式是什麼?
取決於你想達到的目標...如果你想要的東西有時間目的比你應該使用......等待它......定時器:D – RvdK 2010-03-16 13:15:02