timer クラス

timer メッセージング ブロックは単一のターゲットを持つ source_block であり、指定された時間の経過後か、特定の間隔で、メッセージをターゲットに送信することができます。

template<
   class _Type
>
class timer : public Concurrency::details::_Timer, public source_block<single_link_registry<ITarget<_Type>>>;

パラメーター

  • _Type
    このブロックの出力メッセージのペイロード型。

メンバー

パブリック コンストラクター

名前

説明

timer::timer コンストラクター

オーバーロードされます。 指定されたメッセージを指定された間隔の後で送信する timer メッセージング ブロックを構築します。

timer::~timer デストラクター

timer メッセージング ブロックを破棄します。

パブリック メソッド

名前

説明

timer::pause メソッド

timer メッセージング ブロックを停止します。 timer メッセージング ブロックを繰り返す場合、後で start() を呼び出すことで再開できます。 非繰り返しタイマーの場合、この呼び出しは stop の呼び出しと効果が同じになります。

timer::start メソッド

timer メッセージング ブロックを開始します。 このメソッドの呼び出し後に指定されたミリ秒数が経過すると、指定された値が message として下位のレベルに伝達されます。

timer::stop メソッド

timer メッセージング ブロックを停止します。

プロテクト メソッド

名前

説明

timer::accept_message メソッド

この timer メッセージング ブロックによって提供されたメッセージを受け入れ、所有権を呼び出し元に移譲します。

timer::consume_message メソッド

この timer によって以前に提供され、ターゲットによって予約されたメッセージを使用して、所有権を呼び出し元に移譲します。

timer::link_target_notification メソッド

新しいターゲットがこの timer メッセージング ブロックにリンクされたことを通知するコールバックです。

timer::propagate_to_any_targets メソッド

timer ブロックによって生成されたメッセージをリンクされたすべてのターゲットに提供することを試みます。

timer::release_message メソッド

以前に行われたメッセージの予約を解放します。 (source_block::release_message をオーバーライドします。)

timer::reserve_message メソッド

この timer メッセージング ブロックによって以前に提供されたメッセージを予約します。 (source_block::reserve_message をオーバーライドします。)

timer::resume_propagation メソッド

予約が解放された後で反映を再開します。 (source_block::resume_propagation をオーバーライドします。)

解説

詳細については、「非同期メッセージ ブロック」を参照してください。

継承階層

ISource

source_block

_Timer

timer

必要条件

ヘッダー: agents.h

名前空間: Concurrency

参照

参照

Concurrency 名前空間