ThreadPool.SetMaxThreads(Int32, Int32) Methode

Definition

Legt die Anzahl der Anforderungen für den Threadpool fest, die gleichzeitig aktiv sein können.Sets the number of requests to the thread pool that can be active concurrently. Alle über diese Zahl hinausgehenden Anforderungen bleiben in der Warteschlange, bis die Threads des Threadpools verfügbar sind.All requests above that number remain queued until thread pool threads become available.

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

Parameter

workerThreads
Int32

Die maximale Anzahl der Arbeitsthreads im Threadpool.The maximum number of worker threads in the thread pool.

completionPortThreads
Int32

Die maximale Anzahl asynchroner E/A-Threads im Threadpool.The maximum number of asynchronous I/O threads in the thread pool.

Gibt zurück

true, wenn die Änderung erfolgreich ist, andernfalls false.true if the change is successful; otherwise, false.

Hinweise

Sie können die maximale Anzahl von Arbeitsthreads oder e/a-Abschluss Threads nicht auf eine Zahl festlegen, die kleiner ist als die Anzahl der Prozessoren auf dem Computer.You cannot set the maximum number of worker threads or I/O completion threads to a number smaller than the number of processors on the computer. Um zu ermitteln, wie viele Prozessoren vorhanden sind, rufen Sie den Wert der Environment.ProcessorCount-Eigenschaft ab.To determine how many processors are present, retrieve the value of the Environment.ProcessorCount property. Außerdem können Sie nicht die maximale Anzahl von Arbeitsthreads oder e/a-Abschluss Threads auf eine Zahl festlegen, die kleiner ist als die entsprechende Mindestanzahl von Arbeitsthreads oder e/a-abschlusthreads.In addition, you cannot set the maximum number of worker threads or I/O completion threads to a number smaller than the corresponding minimum number of worker threads or I/O completion threads. Um die minimale Thread Pool Größe zu ermitteln, müssen Sie die GetMinThreads-Methode aufzurufen.To determine the minimum thread pool size, call the GetMinThreads method.

Wenn die Common Language Runtime gehostet wird, z. b. durch Internetinformationsdienste (IIS) oder SQL Server, kann der Host Änderungen an der Thread Pool Größe einschränken oder verhindern.If the common language runtime is hosted, for example by Internet Information Services (IIS) or SQL Server, the host can limit or prevent changes to the thread pool size.

Gehen Sie vorsichtig vor, wenn Sie die maximale Anzahl von Threads im Thread Pool ändern.Use caution when changing the maximum number of threads in the thread pool. Während der Code von Vorteil sein kann, haben die Änderungen möglicherweise eine negative Auswirkung auf die verwendeten Codebibliotheken.While your code might benefit, the changes might have an adverse effect on code libraries you use.

Wenn Sie die Größe des Thread Pools zu groß festlegen, kann dies zu Leistungsproblemen führen.Setting the thread pool size too large can cause performance problems. Wenn zu viele Threads gleichzeitig ausgeführt werden, wird der Task Wechsel Aufwand zu einem bedeutenden Faktor.If too many threads are executing at the same time, the task switching overhead becomes a significant factor.

Sicherheit

SecurityPermission
, um Threads steuern zu können.for the ability to control threads. Berechtigungs Wert: ControlThreadPermission value: ControlThread

Gilt für:

Siehe auch