當我實現WaitCallback和QueueUserWorkItem
WaitCallback waitCB = new WaitCallback(DisplayTime);
for (int i = 1; i <= 5; i++)
{
ThreadPool.QueueUserWorkItem(waitCB, null);
Thread.Sleep(2000);
}
public void DisplayTime(object state)
{
Console.WriteLine("Current Time {0} ", DateTime.Now);
}
(1)這是否意味着,我的工作是排隊進入到CLR?
(2)CLR在完成隊列中現有的待處理項目之後是否會處理它?
(3)在隊列中處理我的物品的時間不可預測嗎?
我的懷疑與(3)有關,CLR處理我的物品的時間是不可預測的; CLR的服務對我的物品的服務是否不確定? – user160677 2009-09-24 13:06:26
不,這不是確定性的。 CLR無法知道下一個池線程何時可用 – 2009-09-24 13:18:32