2011-04-15 64 views
-1

什麼是使用waitHandle和使用threadPool的屬性Thread.CurrentThread.IsThreadPoolThread之間的權衡? 考慮到我的線程池中的方法很簡短?使用waitHandle認爲它沒有等待是否合理?C#:什麼時候使用waitHandle,當我們可以使用threadPool屬性

ThreadPool.QueueUserWorkItem(delegate 
          { 
           DoWork(Top, Bottom); 
          }); 

if (Thread.CurrentThread.IsThreadPoolThread == false 
         && SomeotherCondition == false) 
{ 
    // Uses the Dowork 
} 

重新定義問題:何時應該使用waitHandle和IsThreadPoolThread?

+1

這兩個沒什麼共同之處。 – 2011-04-15 16:10:08

回答

2

當您希望線程等待某些操作完成時,請使用WaitHandle。當您想知道線程是否爲線程池線程時,請使用IsThreadPoolThread。換句話說,如果你想要進入太空,就用火箭,如果你想吃蔬菜,就用沙拉。

相關問題