Arquétipo de trabalho

As classes de acordo com o arquétipo de trabalho fornecem código para itens de trabalho de processo enfileirados em um pool de segmentos.

Implementação

Para implementar uma classe que está de acordo com esse arquétipo, a classe deve fornecer os seguintes recursos:

Método

Descrição

Inicializar

Chamado para inicializar o objeto de trabalho antes de todas as solicitações são passados para Executar.

Executar

Chamado para processar um item de trabalho.

Terminar

Chamado para uninitialize as solicitações de trabalho do objeto que foram passados a Executar.

Typedef

Descrição

RequestType

Um typedef para o tipo de item de trabalho que pode ser processado pela classe de trabalho.

Os aspectos de trabalho típicos de uma classe como este:

class CMyWorker
{
public:
   typedef MyRequestType RequestType;

   BOOL Initialize(void* pvWorkerParam);

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

   void Terminate(void* pvWorkerParam);
};

Implementações existentes

Essas classes obedecem a este arquétipo:

Classe

Descrição

CNonStatelessWorker

Recebe solicitações do pool de segmentos e passá-las sobre a um objeto de trabalho que é criado e destruído para cada solicitação.

Uso

Esses parâmetros de modelo esperam a classe este arquétipo a seguir:

Nome de parâmetro

Usado por

Trabalhador

CThreadPool

Trabalhador

CNonStatelessWorker

Requisitos

Cabeçalho: atlutil.h

Consulte também

Referência

Arquétipos de ATL

Outros recursos

Conceitos de ATL

Componentes da área de trabalho COM ATL