ThreadPool.GetAvailableThreads(Int32, Int32) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Recupera a diferença entre o número máximo de threads do pool de threads retornados pelo GetMaxThreads(Int32, Int32) método e o número ativo no momento.
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
O número de threads de trabalho disponíveis.
- completionPortThreads
- Int32
O número de threads de E/S assíncronos disponíveis.
Exemplos
O exemplo a seguir exibe o número de threads de trabalho e threads de E/S disponíveis quando um aplicativo simples é iniciado.
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
Comentários
Quando GetAvailableThreads retorna, a variável especificada contém workerThreads o número de threads de trabalho adicionais que podem ser iniciados e a variável especificada contém completionPortThreads o número de threads de E/S assíncronos adicionais que podem ser iniciados.
Se não houver threads disponíveis, as solicitações adicionais do pool de threads permanecerão na fila até que os threads do pool de threads fiquem disponíveis.