Класс timer
Блок сообщений timer — это одноцелевой source_block, способный отправлять сообщение цели по истечении указанного периода времени или через определенные интервалы.
template<
class _Type
>
class timer : public Concurrency::details::_Timer, public source_block<single_link_registry<ITarget<_Type>>>;
Параметры
- _Type
Тип полезных данных выводных сообщений этого блока.
Члены
Открытые конструкторы
Name |
Описание |
---|---|
Перегружен. Создает блок сообщений timer который, будет отправлять заданное сообщение после указанного интервала. |
|
Уничтожает блок сообщений timer. |
Открытые методы
Name |
Описание |
---|---|
Останавливает блок обмена сообщениями timer. Если это повторяющаяся блока обмена сообщениями timer, можно перезапустить его с последующим вызовом start(). Для неповторяющихся таймеров, это имеет тот же эффект, как вызов stop. |
|
Начинает блок сообщений timer. Через заданное количество миллисекунд после этого вызова, указанное значение распространяется дальше по ходу процесса как message. |
|
Останавливает блок обмена сообщениями timer. |
Защищенные методы
Name |
Описание |
---|---|
Принимает сообщение, предложенное этим блоком сообщений timer, передавая владение вызывающему объекту. |
|
Потребляет сообщение, ранее предложенное timer зарезервированное целевым объектом, передавая владение вызывающему объекту. |
|
Обратный вызов, который уведомляет, что новая цель связана с этим блоком сообщений timer. |
|
Пытается предложить сообщение, созданное блоком timer, на все связанные целевые объекты. |
|
Освобождает предыдущее резервирование сообщения. (Переопределяет конструктор source_block::release_message). |
|
Резервирует сообщение, которое было предложено этим блоком сообщений timer. (Переопределяет конструктор source_block::reserve_message). |
|
Возобновляет распространение после отмены резервирования. (Переопределяет конструктор source_block::resume_propagation). |
Заметки
Для получения дополнительной информации см. Асинхронные блоки сообщений.
Иерархия наследования
timer
Требования
Заголовок: agents.h
Пространство имен: concurrency