ThreadPool.SetMaxThreads(Int32, Int32) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Anger antalet begäranden till trådpoolen som kan vara aktiv samtidigt. Alla begäranden ovanför det antalet förblir i kö tills trådpoolstrådar blir tillgängliga.
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
Parametrar
- workerThreads
- Int32
Det maximala antalet arbetstrådar i trådpoolen.
- completionPortThreads
- Int32
Det maximala antalet asynkrona I/O-trådar i trådpoolen.
Returer
trueom ändringen lyckas. annars . false
Kommentarer
Den här metoden stöds inte när Windows trådpool är konfigurerad att användas i stället för .NET trådpool. Mer information finns i konfigurationsinställningen Windows trådpool.
Du kan inte ange det maximala antalet arbetstrådar eller I/O-slutförandetrådar till ett tal som är mindre än antalet processorer på datorn. Om du vill ta reda på hur många processorer som finns hämtar du värdet för Environment.ProcessorCount egenskapen. Dessutom kan du inte ange det maximala antalet arbetstrådar eller I/O-slutförandetrådar till ett tal som är mindre än motsvarande minsta antal arbetstrådar eller I/O-slutförandetrådar. Anropa metoden för att fastställa den minsta storleken på trådpoolen GetMinThreads .
Om den vanliga språkkörningen hanteras, till exempel av Internet Information Services (IIS) eller SQL Server, kan värden begränsa eller förhindra ändringar i trådpoolens storlek.
Var försiktig när du ändrar det maximala antalet trådar i trådpoolen. Även om koden kan vara till nytta kan ändringarna ha en negativ effekt på de kodbibliotek som du använder.
Om du ställer in storleken på trådpoolen för stor kan det orsaka prestandaproblem. Om för många trådar körs samtidigt blir aktivitetsväxlingen en viktig faktor.
Note
Trådpoolen kan ha övre gränser för maximalt antal trådar (till exempel short.MaxValue, beroende på implementeringen). Argumentvärdena är begränsade till den övre gränsen, så även när metoden returnerar truekan det faktiska maximala antalet trådar vara lägre än begärt.