新的 GetMinThreads 方法和新 SetMinThreads 方法在.NET Framework 1.1 ThreadPool 類別的相關資訊

文章翻譯 文章翻譯
文章編號: 827419 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

簡介

Microsoft.NET Framework 1.1 會加入兩個新的方法,請依照下列:
  • SetMinThreads
  • GetMinThreads
這兩個新的方法是針對 ThreadPool 類別。SetMinThreads 方法用來增加閒置的背景工作執行緒數目或 ThreadPool 類別會維護的 I/O 完成執行緒數目。GetMinThreads 方法用於取得目前的設定。

其他相關資訊

根據預設的 ThreadPool 類別針對維護的閒置執行緒數目最小值為,如下所示:
  • 每個電腦處理器的一個執行緒
  • 一個執行緒的每個背景工作執行緒類別
  • 每個 I/O 類別的一個執行緒
如果特定的應用程式突然需要較大的數字的執行緒,則執行緒會配置的方式可能會造成瓶頸。若要避免這個問題,使用 SetMinThreads 方法增加閒置的背景工作執行緒數目和 ThreadPool 類別會維護的 I/O 完成執行緒的數目。使用 GetMinThreads 方法,取得目前的最小設定。

SetMinThreads 方法

  • 遵循在程式碼範例中,會提供 SetMinThreads 方法
     
    public static bool SetMinThreads(int workerThreads, int completionPortThreads)
    {
     return SetMinThreadsNative(workerThreads, completionPortThreads);
    }
    的定義
  • 您可以新增 SetMinThreads 方法,以增加閒置的背景工作執行緒,以增加 ThreadPool 類別所維護的 I/O 完成執行緒的數目。
  • SetMinThreads 方法設定無關的電腦有的處理器數目的閒置執行緒總數目。
  • 如果您指定一個負值或更大的數字比您可以取得從 GetMaxThreads 方法 ThreadPool 類別的作用中 ThreadPool 類別執行緒最大連線數目,SetMinThreads 方法會傳回 false,而不會變更其中一個最小值。

GetMinThreads 方法

  • 遵循在程式碼範例中,會提供定義
    public static void GetMinThreads(out int workerThreads, out int completionPortThreads)
    {
     GetMinThreadsNative(out workerThreads, out completionPortThreads);
    }
    GetMinThreads 方法。
  • 您可以將 GetMinThreads 方法加入至 ThreadPool 類別做為.NET 1.1 架構,以取得閒置的背景工作執行緒數目,以及 ThreadPool 類別所維護的 I/O 完成執行緒數目的一部分。
  • GetMinThreads 方法會取得的電腦有的處理器數目不考慮閒置執行緒的總數。

使用 SetMinThreads 方法和 GetMinThreads 方法的程式碼範例

下列程式碼範例最小數目的閒置背景工作執行緒設定為 4。閒置的 I/O 完成執行緒數目最小的原始值會被保留。

Microsoft Visual Basic.NET
Dim minWorker, minIOC As Integer
        ' Get the current settings.
        ThreadPool.GetMinThreads(minWorker, minIOC)
        ' Change the minimum number of Worker threads to 4 but keep
        ' the old setting for the minimum I/O completion threads.
        If ThreadPool.SetMinThreads(4, minIOC) Then
            ' The minimum number of threads is set successfully.
        Else
            ' The minimum number of threads is not changed.
        End If
Microsoft Visual C#.NET
int minWorker, minIOC;
        // Get the current settings.
        ThreadPool.GetMinThreads(out minWorker, out minIOC);
        // Change the minimum number of Worker threads to 4 but keep
        // the old setting for minimum I/O completion threads.
        if (ThreadPool.SetMinThreads(4, minIOC))
        {
            // The minimum number of threads is set successfully.
        }
        else
        {
            // The minimum number of threads is not changed.
        }

?考

如需詳細資訊按一下 [下列面的文件編號,檢視 「 Microsoft 知識庫 」 中發行項]:
810259FIX: SetMinThreads 和 GetMinThreads API 新增至通用語言執行階段 ThreadPool 類別
315460如何使用 Visual C#.NET 提交至執行緒集區的工作項目

屬性

文章編號: 827419 - 上次校閱: 2004年11月12日 - 版次: 1.3
這篇文章中的資訊適用於:
  • Microsoft Visual C# .NET 2003 標準版
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft .NET Framework 1.1
關鍵字:?
kbmt kbinfo kbhowto kbthread kbperformance kbcommandline KB827419 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:827419
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com