Freigeben über


CWorkerThread-Klasse

Diese Klasse erstellt einen Arbeitsthread oder verwendet eine vorhandene, wartet auf eine oder mehrere Kernelobjekthandles und führt eine angegebene Clientfunktion aus, wenn eines der Handles signalisiert wird.

Wichtiger HinweisWichtig

Diese Klasse und ihre Member können in Anwendungen nicht verwendet werden, die in der Windows Runtime ausführen.

template <
class ThreadTraits= DefaultThreadTraits
>
class CWorkerThread

Parameter

Mitglieder

w849dybf.collapse_all(de-de,VS.110).gifGeschützte Strukturen

Name

Description

WorkerClientEntry

w849dybf.collapse_all(de-de,VS.110).gifÖffentliche Konstruktoren

Name

Description

CWorkerThread::CWorkerThread

Der Konstruktor für den Arbeitsthread.

CWorkerThread::~CWorkerThread

Der Destruktor für den Arbeitsthread.

w849dybf.collapse_all(de-de,VS.110).gifÖffentliche Methoden

Name

Description

CWorkerThread::AddHandle

Rufen Sie diese Methode auf, um das Handle eines Objekts wait-fähigen der Liste hinzuzufügen, die durch den Arbeitsthread gespeichert werden.

CWorkerThread::AddTimer

Rufen Sie diese Methode auf, um einen regelmäßigen waitable Zeitgeber der Liste hinzuzufügen, die durch den Arbeitsthread gespeichert werden.

CWorkerThread::GetThreadHandle

Rufen Sie diese Methode auf, um das Threadhandle des Arbeitsthreads abzurufen.

CWorkerThread::GetThreadId

Rufen Sie diese Methode auf, um die Thread-IDs des Arbeitsthreads abzurufen.

CWorkerThread::Initialize

Rufen Sie diese Methode auf, um den Arbeitsthread zu initialisieren.

CWorkerThread::RemoveHandle

Rufen Sie diese Methode auf, um ein Handle aus der Liste der wait-fähigen Objekten zu entfernen.

CWorkerThread::Shutdown

Rufen Sie diese Methode auf, um den Arbeitsthread herunterzufahren.

Hinweise

So CWorkerThread verwenden

  1. Erstellen Sie eine Instanz dieser Klasse.

  2. Aufruf CWorkerThread::Initialize.

  3. Aufruf CWorkerThread::AddHandle mit dem Handle eines Kernelobjekts und einen Zeiger auf eine Implementierung von IWorkerThreadClient.

    – oder –

    Rufen Sie CWorkerThread::AddTimer mit einem Zeiger auf eine Implementierung von IWorkerThreadClient auf.

  4. Implementieren Sie IWorkerThreadClient::Execute, um eine Aktion auszuführen, wenn das Handle oder der Zeitgeber signalisiert wird.

  5. Um ein Objekt aus der Liste der wait-fähigen Objekte zu entfernen, rufen Sie CWorkerThread::RemoveHandle auf.

  6. Um den Thread zu beenden, rufen Sie CWorkerThread::Shutdown auf.

Anforderungen

Header: atlutil.h

Siehe auch

Referenz

DefaultThreadTraits

IWorkerThreadClient-Schnittstelle

Konzepte

Multithreading: Erstellen von Arbeitsthreads

Weitere Ressourcen

ATL-Klassen