次の方法で共有


propagator_block::propagate メソッド

ソース ブロックからこのターゲット ブロックにメッセージを非同期的に渡します。

virtual message_status propagate(
   message<_Source_type> * _PMessage,
   ISource<_Source_type> * _PSource
);

パラメーター

  • _PMessage
    message オブジェクトを指すポインター。

  • _PSource
    メッセージを提供するソース ブロックを指すポインター。

戻り値

ターゲットがこのメッセージに対して決定した処理を示す message_status 値。

解説

propagate メソッドは、リンクされたソース ブロックからターゲット ブロックに対して呼び出されます。 非同期タスクがキューに配置されていないか実行中でない場合、ソース ブロックはメッセージを処理するためにタスクをキューに置きます。

_PMessage パラメーターまたは _PSource パラメーターが NULL の場合、このメソッドは invalid_argument 例外をスローします。

必要条件

ヘッダー: agents.h

名前空間: Concurrency

参照

参照

propagator_block クラス