2012-02-20 53 views
-1

我可以認爲計時器是一種特殊類型的線程嗎?如果它們是工作在異步運行的「子進程」,有什麼區別?定時器是線程嗎?

我工作的一個C#Windows服務,特別是C#的System.Threading.Timer VS System.Threading.Thread(使用了Thread.Sleep流逝吧)

+0

我不太明白這個問題。你可以把它肉化嗎?你在說什麼特定的類型? – Gray 2012-02-20 17:05:24

+0

什麼語言? – PeeHaa 2012-02-20 17:05:34

+0

是不是這種語言不可知論者? – Milox 2012-02-20 17:18:26

回答

3

定時器不是一個線程,但有一個定時器異步火災事件可視爲多線程的一種形式 - 以及所有傳統的多線程問題!

0

更喜歡'什麼操作系統?'。系統調用中的休眠間隔和超時通常由內核中用戶線程句柄/指針/任意的delta隊列提供,並由剩餘的超時時間排序。在那些提供定時器對象的環境中,通過某種消息分派機制來引發事件,通常使用類似的方法。當更有效的機制可用時,維護一個每線程定時器當然是不必要的,而且非常浪費。