Активный объект (active object) — это шаблон проектирования, который отделяет поток выполнения метода от потока, в котором он был вызван. Целью данного шаблона является предоставление параллельности выполнения используя асинхронные вызовы методов и планировщик обработки запросов.
Этот шаблон состоит из шести элементов:
Объект-заместитель (proxy), который предоставляет интерфейс к публично-доступным методам клиента. Интерфейс, который определяет методы доступа к активному объекту. Список поступающих запросов от клиентов. Планировщик (scheduler), который определяет порядок выполнения запросов. Реализация методов активного объекта. Процедура обратного вызова (callback) или переменная (variable) для получения клиентом результата.
Этот шаблон состоит из шести элементов:
Объект-заместитель (proxy), который предоставляет интерфейс к публично-доступным методам клиента.
Интерфейс, который определяет методы доступа к активному объекту.
Список поступающих запросов от клиентов.
Планировщик (scheduler), который определяет порядок выполнения запросов.
Реализация методов активного объекта.
Процедура обратного вызова (callback) или переменная (variable) для получения клиентом результата.