ThreadPool.GetAvailableThreads(Int32, Int32) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Načte rozdíl mezi maximálním počtem vláken fondu vláken vrácených metodou GetMaxThreads(Int32, Int32) a počtem aktuálně aktivních.
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)
Parametry
- workerThreads
- Int32
Počet dostupných pracovních vláken.
- completionPortThreads
- Int32
Počet dostupných asynchronních vstupně-výstupních vláken.
Příklady
Následující příklad zobrazuje počet pracovních vláken a vstupně-výstupních vláken dostupných při spuštění jednoduché aplikace.
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
Poznámky
Při GetAvailableThreads vrácení obsahuje proměnná určená parametrem workerThreads
počet dalších pracovních vláken, která lze spustit, a proměnná zadaná parametrem completionPortThreads
obsahuje počet dalších asynchronních vstupně-výstupních vláken, která lze spustit.
Pokud nejsou dostupná žádná vlákna, další žádosti fondu vláken zůstanou ve frontě, dokud nebudou dostupná vlákna fondu vláken.