Worker Archetype
Классы, соответствующие архетипу рабочего процесса предоставляют код в очереди элементы работы в пуле потоков.
Реализация
Чтобы реализовать класс, соответствующий этому архетипу, класс должен предоставлять следующие функции:
Метод |
Описание |
---|---|
Вызываемый для инициализации объекта работу перед всеми запросами передайте в Execute. |
|
Вызываемый для обработки рабочий элемент. |
|
Вызываемый для uninitialize объект работу после того, как все запросы будут переданы Execute. |
Определение типа |
Описание |
---|---|
Typedef для типа рабочего элемента, который может быть обработан классом рабочего процесса. |
Типичный класс работы выглядит следующим образом:
class CMyWorker
{
public:
typedef MyRequestType RequestType;
BOOL Initialize(void* pvWorkerParam);
void Execute(MyRequestType request, void* pvWorkerParam, OVERLAPPED* pOverlapped);
void Terminate(void* pvWorkerParam);
};
Существующие реализации
Эти классы соответствующих этому архетипу:
Класс |
Описание |
---|---|
Получает запросы из пула потоков и передает их в объект работы, создание и уничтожается для каждого запроса. |
Применение
Эти параметры шаблона ожидают класс, чтобы соответствовать этому архетипу:
Имя параметра |
Использующие элементы |
---|---|
Рабочий |
|
Рабочий |
Требования
Header: atlutil.h
См. также
Ссылки
Другие ресурсы
Основные понятия активной библиотеки шаблонных классов (ATL)