다음을 통해 공유


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 예외를 throw합니다.

매개 변수 _PTarget이 reserve라고 하는 대상을 나타내지 않는 경우 메서드는 bad_target 예외를 throw합니다.

consume 메서드는 accept와 비슷하지만 항상 true를 반환하는 reserve에 대한 호출이 선행되어야 합니다.

요구 사항

헤더: agents.h

네임스페이스: 동시성

참고 항목

참조

source_block 클래스