ThreadPool.GetAvailableThreads(Int32, Int32) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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.