Sdílet prostřednictvím


ThreadPool.SetMaxThreads(Int32, Int32) Metoda

Definice

Nastaví počet požadavků na fond vláken, které mohou být současně aktivní. Všechny požadavky nad tímto číslem zůstávají ve frontě, dokud nebudou dostupná 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 Windows.

Maximální počet pracovních vláken nebo vláken dokončení vstupně-výstupních operací nelze nastavit na číslo menší, 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ž je odpovídající minimální počet pracovních vláken nebo vláken dokončení vstupně-výstupních operací. 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 Serverem, 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 důležitým faktorem režie přepínání úloh.

Poznámka

Fond vláken může mít horní omezení maximálního počtu 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é