Freigeben über


Windows.System.Threading Namespace

Ermöglicht es einer Anwendung, den Threadpool zum Ausführen von Arbeitselementen zu verwenden.

Der Threadpool stellt einen Pool von Workerthreads bereit, den eine Anwendung für Arbeitselemente verwenden kann, die parallel ausgeführt werden können. Die Verwendung des Threadpools ist einfacher und effizienter als das Erstellen einzelner Threads, da der Threadpool Threadlebensdauern verwaltet und Arbeitselemente plant, wenn Threads verfügbar werden.

Arbeitselemente werden asynchron ausgeführt und können in beliebiger Reihenfolge ausgeführt werden. Daher ist es am besten, den Threadpool für Arbeitselemente zu verwenden, die nicht viel Zeit in Anspruch nehmen und nicht von der Ausgabe des anderen abhängig sind. Sie erstellen ein Arbeitselement, indem Sie die RunAsync-Methode aufrufen. Das Arbeitselement wird der Warteschlange des Threadpools hinzugefügt, wo es bleibt, bis ein Thread verfügbar wird. Wenn ein Thread verfügbar wird, ruft der Threadpool den zugeordneten WorkItemHandler-Delegat des Arbeitselements auf, und das Arbeitselement wird ausgeführt.

Der Threadpool plant ein Arbeitselement, sobald ein Thread verfügbar wird, sodass das Element möglicherweise sofort ausgeführt wird. Wenn das Arbeitselement nach einer bestimmten Zeit ausgeführt werden soll, verwenden Sie einen Timer. Sie erstellen einen Timer und geben dessen Timeoutwert an, indem Sie die CreateTimer-Methode aufrufen. Der Timer beginnt mit dem Zählen, sobald er erstellt wurde, sodass Sie ihn nicht starten müssen. Wenn der Timer abläuft, ruft der Threadpool den TimerElapsedHandler-Delegat des Timers auf.

Wenn Sie ein Arbeitselement mehrmals in einem regelmäßigen Intervall ausführen möchten, verwenden Sie die CreatePeriodicTimer-Methode , um einen regelmäßigen Timer zu erstellen. Ein regelmäßiger Timer wird jedes Mal zurückgesetzt, wenn er abläuft, und bleibt aktiv, bis Sie ihn abbrechen.

Wenn Ein Arbeitselement warten soll, bis ein Ereignis oder Semaphor signalisiert wird, oder wenn Sie ein vorab zugewiesenes Arbeitselement erstellen möchten, lesen Sie Windows.System.Threading.Core.

Beispielcode, der die Verwendung des Threadpools veranschaulicht, finden Sie im Threadpoolbeispiel.

Hinweis

Die ThreadPool-API wird sowohl für Desktop- als auch für UWP-Apps unterstützt.

Klassen

ThreadPool

Ermöglicht den Zugriff auf den Threadpool. Ausführliche Anleitungen zur Verwendung des Threadpools finden Sie unter Threading und asynchrone Programmierung :

Hinweis

Die ThreadPool-API wird sowohl für Desktop- als auch für UWP-Apps unterstützt.

ThreadPoolTimer

Stellt einen timer dar, der mit CreateTimer oder CreatePeriodicTimer erstellt wurde.

Hinweis

Die ThreadPool-API wird sowohl für Desktop- als auch für UWP-Apps unterstützt.

Enumerationen

WorkItemOptions

Gibt an, wie Arbeitselemente ausgeführt werden sollen.

WorkItemPriority

Gibt die Priorität eines Arbeitselements im Verhältnis zu anderen Arbeitselementen im Threadpool an.

Delegaten

TimerDestroyedHandler

Stellt eine Methode dar, die aufgerufen wird, wenn ein mit CreateTimer oder CreatePeriodicTimer erstelltes Timer abgeschlossen ist.

TimerElapsedHandler

Stellt eine Methode dar, die aufgerufen wird, wenn ein mit CreateTimer oder CreatePeriodicTimer erstellter Timer abläuft.

WorkItemHandler

Stellt eine Methode dar, die aufgerufen wird, wenn ein Arbeitselement ausgeführt wird.