Partager via


Archétype de travail

Les classes conformes à l'archétype de travail fournissent le code aux éléments de travail par processus mis en file d'attente sur un pool de threads.

Implémentation

Pour implémenter une classe conformes à cet archétype, la classe doit fournir les fonctionnalités suivantes :

Méthode

Description

Initialize

Appelé pour initialiser l'objet de travail avant toutes les demandes sont passés à exécutez.

Execute

Appelé pour traiter un élément de travail.

Terminer

Appelée pour uninitialize les requêtes d'objet de travail après que tous ont été passés à exécutez.

Typedef

Description

RequestType

Un typedef pour le type d'élément de travail qui peut être traité par la classe de travail.

Recherche de travail typiques d'une classe ressemble à ceci :

class CMyWorker
{
public:
   typedef MyRequestType RequestType;

   BOOL Initialize(void* pvWorkerParam);

   void Execute(MyRequestType request, void* pvWorkerParam, OVERLAPPED* pOverlapped);

   void Terminate(void* pvWorkerParam);
};

Implémentations existantes

Ces classes sont conformes à cet archétype :

Classe

Description

CNonStatelessWorker

Accepte les demandes du pool de threads et les transmet à un objet de travail créé et détruit pour chaque demande.

Utilisation

Ces paramètres de modèle s'attendent à ce que la classe est conforme à cet archétype :

Nom de paramètre

Utilisé par

Ouvrier

CThreadPool

Ouvrier

CNonStatelessWorker

Configuration requise

Header: atlutil.h

Voir aussi

Référence

Archétypes ATL

Autres ressources

Concepts ATL

Composants de Bureau COM ATL