ThreadPool 類提供一個線程池,該線程池可用于發送工作項、處理異步 I/O、代表其他線程等待以及處理計時器。
線程池的常用方法
1. public static Boolean QueueUserWorkItem(WaitCallback wc, Object state);
WaitCallback回調函數就是前文所闡述的應用程序,通過將一些回調函數放入線程池中讓其形成隊列,然后線程池會自動創建或者復用線程
去執行處理這些回調函數,
State: 這個參數也是非常重要的,當執行帶有參數的回調函數時,該參數會將引用傳入,回調方法中,供其使用
3. public static bool SetMaxThreads(int workerThreads,int completionPortThreads);
4. public static bool SetMinThreads(int workerThreads,int completionPortThreads);
3和4方法 CLR線程池類中預留的兩個能夠更改,線程池中的工作線程和I/O線程數量的方法。
使用該方法時有兩點必須注意:
1.不能將輔助線程的數目或 I/O 完成線程的數目設置為小于計算機的處理器數目。
2.微軟不建議程序員使用這兩個方法的原因是可能會影響到線程池中的性能
ThreadPool 方法
BindHandle 已重載。 將操作系統句柄綁定到 ThreadPool。
Public method Supported by the .NET Compact Framework Equals 已重載。 確定兩個 Object 實例是否相等。 (從 Object 繼承。)
Public method Static GetAvailableThreads 檢索由 GetMaxThreads 返回的線程池線程的最大數目和當前活動數目之間的差值。
Public method Supported by the .NET Compact Framework GetHashCode 用作特定類型的哈希函數。GetHashCode 適合在哈希算法和數據結構(如哈希表)中使用。 (從 Object 繼承。)
Public method Static GetMaxThreads 檢索可以同時處于活動狀態的線程池請求的數目。所有大于此數目的請求將保持排隊狀態,直到線程池線程變為可用。
Public method Static GetMinThreads 檢索線程池在新請求預測中維護的空閑線程數。
Public method Supported by the .NET Compact Framework GetType 獲取當前實例的 Type。 (從 Object 繼承。)
Public method Static Supported by the .NET Compact Framework QueueUserWorkItem 已重載。 將方法排入隊列以便執行。此方法在有線程池線程變得可用時執行。
Public method Static Supported by the .NET Compact Framework ReferenceEquals 確定指定的 Object 實例是否是相同的實例。 (從 Object 繼承。)
Public method Static RegisterWaitForSingleObject 已重載。 注冊正在等待 WaitHandle 的委托。
Public method Static SetMaxThreads 設置可以同時處于活動狀態的線程池的請求數目。所有大于此數目的請求將保持排隊狀態,直到線程池線程變為可用。
Public method Static SetMinThreads 設置線程池在新請求預測中維護的空閑線程數。
Public method Supported by the .NET Compact Framework ToString 返回表示當前 Object 的 String。 (從 Object 繼承。)
Public method Static UnsafeQueueNativeOverlapped 將重疊的 I/O 操作排隊以便執行。
Public method Static UnsafeQueueUserWorkItem 注冊一個等待 WaitHandle 的委托。
Public method Static UnsafeRegisterWaitForSingleObject 已重載。 將指定的委托排隊到線程池。
- PC官方版
- 安卓官方手機版
- IOS官方手機版