Partager via


CWorkerThread, classe

Cette classe crée un thread de travail ou utilise existant, attend un ou plusieurs handles d'objet de noyau, puis exécute une fonction cliente spécifiée lorsque l'une des poignées est signalé.

Important

Cette classe et ses membres ne peuvent pas être utilisés dans les applications qui s'exécutent dans les fenêtres d'exécution.

template < 
class ThreadTraits= DefaultThreadTraits 
> 
class CWorkerThread

Paramètres

Membres

Structures protégées

Nom

Description

WorkerClientEntry

Constructeurs publics

Nom

Description

CWorkerThread::CWorkerThread

Le constructeur pour le thread de travail.

CWorkerThread::~CWorkerThread

Le destructeur de le thread de travail.

Méthodes publiques

Nom

Description

CWorkerThread::AddHandle

Appelez cette méthode pour ajouter le handle d'un objet de type waitable à la liste mise à jour par le thread de travail.

CWorkerThread::AddTimer

Appelez cette méthode pour ajouter une minuterie waitable périodique à la liste mise à jour par le thread de travail.

CWorkerThread::GetThreadHandle

Appelez cette méthode pour obtenir le handle du thread du thread de travail.

CWorkerThread::GetThreadId

Appelez cette méthode pour obtenir l'ID de thread du thread de travail.

CWorkerThread::Initialize

Appelez cette méthode pour démarrer le thread de travail.

CWorkerThread::RemoveHandle

Appelez cette méthode pour supprimer un handle de la liste d'objets de type waitable.

CWorkerThread::Shutdown

Appelez cette méthode pour arrêter le thread de travail.

Notes

Pour utiliser CWorkerThread

  1. Créez une instance de cette classe.

  2. Appel CWorkerThread::Initialize.

  3. Appel CWorkerThread::AddHandle avec le handle d'un objet de noyau et un pointeur vers une implémentation d' IWorkerThreadClient.

    - ou -

    Appelez CWorkerThread::AddTimer avec un pointeur vers une implémentation d' IWorkerThreadClient.

  4. Implémentez IWorkerThreadClient::Execute pour prendre une certaine mesure lorsque le handle ou la minuterie est signalé.

  5. Pour supprimer un objet de la liste d'objets de type waitable, appelez CWorkerThread::RemoveHandle.

  6. Pour terminer le thread, appelez CWorkerThread::Shutdown.

Configuration requise

Header: atlutil.h

Voir aussi

Référence

DefaultThreadTraits

Interface d'IWorkerThreadClient

Concepts

Multithreading : création de threads de travail

Autres ressources

Classes ATL