C#中Thread與ThreadPool的比較

      最近同事在編寫一個基於UPD RTP協議的通訊軟件,在處理接收Listen時,發現了一個問題究竟是用Thread仍是ThreadPool呢?性能

我看同事的問題比較有典型性,仍是作以整理培訓一下吧操作系統

     Thread類,一次使用一個線程來建立刪除線程,這種方式代價比較大(主要是建立和消毀過程,操做系統付出的代價)而ThreadPool 線程

的出現主要是解決這個問題,將線程池化,能夠重用已有的線程,使用完線程後,線程就會返回線程池,供之後使用。ThreadPool有25個軟件

可用的線程(每一個處理器)。List

ThreadPool類應用場景:線程池

1.以簡單的方式建立和刪除線程;程序

2.應用程序主線程的性能要優先考慮;通信

Thread類的應用場景:協議

1.要控制線程的優先級;管理

2.使用的線程週期比較長;

3.但願對線程有更多的管理維護。

相關文章
相關標籤/搜索