ThreadPool.GetAvailableThreads(Int32, Int32) Methode

Definition

Ruft den Unterschied zwischen der maximalen Anzahl von Threadpoolthreads ab, die von der GetMaxThreads(Int32, Int32) Methode zurückgegeben werden, und der Anzahl, die derzeit aktiv ist.

public:
 static void GetAvailableThreads([Runtime::InteropServices::Out] int % workerThreads, [Runtime::InteropServices::Out] int % completionPortThreads);
public static void GetAvailableThreads(out int workerThreads, out int completionPortThreads);
static member GetAvailableThreads : int * int -> unit
Public Shared Sub GetAvailableThreads (ByRef workerThreads As Integer, ByRef completionPortThreads As Integer)

Parameter

workerThreads
Int32

Die Anzahl der verfügbaren Arbeitsthreads.

completionPortThreads
Int32

Die Anzahl der verfügbaren asynchronen E/A-Threads.

Beispiele

Im folgenden Beispiel wird die Anzahl der Arbeitsthreads und E/A-Threads angezeigt, die verfügbar sind, wenn eine einfache App gestartet wird.

using System;
using System.Threading;

public class Example
{
   public static void Main()
   {
      int worker = 0;
      int io = 0;
      ThreadPool.GetAvailableThreads(out worker, out io);
      
      Console.WriteLine("Thread pool threads available at startup: ");
      Console.WriteLine("   Worker threads: {0:N0}", worker);
      Console.WriteLine("   Asynchronous I/O threads: {0:N0}", io);
   }
}
// The example displays output like the following:
//    Thread pool threads available at startup:
//       Worker threads: 32,767
//       Asynchronous I/O threads: 1,000
Imports System.Threading

 Module Example
   Public Sub Main()
      Dim worker As Integer = 0
      Dim io As Integer = 0
      ThreadPool.GetAvailableThreads(worker, io)
      
      Console.WriteLine("Thread pool threads available at startup: ")
      Console.WriteLine("   Worker threads: {0:N0}", worker)
      Console.WriteLine("   Asynchronous I/O threads: {0:N0}", io)
   End Sub
End Module
' The example displays output like the following:
'    Thread pool threads available at startup:
'       Worker threads: 32,767
'       Asynchronous I/O threads: 1,000

Hinweise

Wenn GetAvailableThreads die Variable zurückgegeben wird, enthält die durch workerThreads die Anzahl zusätzlicher Arbeitsthreads angegebene Anzahl zusätzlicher Arbeitsthreads, die gestartet werden können, und die variable, die durch completionPortThreads die Anzahl zusätzlicher asynchroner E/A-Threads angegeben wird, die gestartet werden können.

Wenn keine verfügbaren Threads vorhanden sind, bleiben zusätzliche Threadpoolanforderungen in der Warteschlange, bis Threadpoolthreads verfügbar sind.

Gilt für:

Weitere Informationen