次の方法で共有


source_block::consume メソッド

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

virtual message<_Target_type> * consume(
   runtime_object_identity _MsgId,
   ITarget<_Target_type> * _PTarget
);

パラメーター

  • _MsgId
    予約された message オブジェクトの runtime_object_identity

  • _PTarget
    consume メソッドを呼び出しているターゲット ブロックへのポインター。

戻り値

呼び出し元が所有権を獲得した message オブジェクトへのポインター。

解説

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

パラメーター _PTarget が、reserve を呼び出したターゲットとは異なる場合、このメソッドは、bad_target 例外をスローします。

consume メソッドは accept に似ていますが、true を返した reserve の後に呼び出す必要があります。

必要条件

ヘッダー: agents.h

名前空間: Concurrency

参照

参照

source_block クラス