Comparteix a través de


ThreadPool.GetAvailableThreads(Int32, Int32) Método

Definición

Recupera la diferencia entre el número máximo de subprocesos de grupo de subprocesos devuelto por el método GetMaxThreads(Int32, Int32) y el número activo actualmente.

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)

Parámetros

workerThreads
Int32

Número de subprocesos de trabajo disponibles.

completionPortThreads
Int32

Número de subprocesos de E/S asincrónicos disponibles.

Ejemplos

En el ejemplo siguiente se muestra el número de subprocesos de trabajo y subprocesos de E/S disponibles cuando se inicia una aplicación sencilla.

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

Comentarios

Cuando GetAvailableThreads devuelve, la variable especificada por workerThreads contiene el número de subprocesos de trabajo adicionales que se pueden iniciar y la variable especificada por completionPortThreads contiene el número de subprocesos de E/S asincrónicos adicionales que se pueden iniciar.

Si no hay subprocesos disponibles, las solicitudes adicionales del grupo de subprocesos permanecen en cola hasta que los subprocesos del grupo de subprocesos estén disponibles.

Se aplica a

Consulte también