ThreadPool.SetMaxThreads(Int32, Int32) Metoda

Definice

Nastaví počet požadavků na fond vláken, které můžou být současně aktivní. Všechny požadavky nad tímto číslem zůstanou ve frontě, dokud nebudou k dispozici vlákna fondu vláken.

public:
 static bool SetMaxThreads(int workerThreads, int completionPortThreads);
public static bool SetMaxThreads (int workerThreads, int completionPortThreads);
static member SetMaxThreads : int * int -> bool
Public Shared Function SetMaxThreads (workerThreads As Integer, completionPortThreads As Integer) As Boolean

Parametry

workerThreads
Int32

Maximální počet pracovních vláken ve fondu vláken.

completionPortThreads
Int32

Maximální počet asynchronních vstupně-výstupních vláken ve fondu vláken.

Návraty

truepokud je změna úspěšná; v opačném případě . false

Poznámky

Tato metoda není podporována, pokud je fond vláken Systému Windows nakonfigurován tak, aby se používal místo fondu vláken .NET. Další informace najdete v nastavení konfigurace fondu vláken systému Windows.

Maximální počet pracovních vláken nebo vláken dokončení vstupně-výstupních operací nelze nastavit na menší počet, než je počet procesorů v počítači. Pokud chcete zjistit, kolik procesorů je k dispozici, načtěte hodnotu Environment.ProcessorCount vlastnosti . Kromě toho nelze nastavit maximální počet pracovních vláken nebo vláken dokončení vstupně-výstupních operací na číslo menší než odpovídající minimální počet pracovních vláken nebo vstupně-výstupních vláken dokončení. Pokud chcete zjistit minimální velikost fondu vláken, zavolejte metodu GetMinThreads .

Pokud je modul CLR (Common Language Runtime) hostovaný například Internetovou informační službou (IIS) nebo SQL Server, může hostitel omezit nebo zabránit změnám velikosti fondu vláken.

Při změně maximálního počtu vláken ve fondu vláken postupujte opatrně. I když váš kód může být přínosný, změny můžou mít nepříznivý vliv na knihovny kódu, které používáte.

Nastavení příliš velké velikosti fondu vláken může způsobit problémy s výkonem. Pokud se současně spouští příliš mnoho vláken, stává se režie přepínání úloh významným faktorem.

Poznámka

Fond vláken může mít horní omezení pro maximální počet vláken (například short.MaxValue, v závislosti na implementaci). Hodnoty argumentů jsou omezeny na horní limit, takže i když metoda vrátí true, skutečný maximální počet vláken může být nižší, než je požadováno.

Platí pro

Viz také