次の方法で共有


message クラス

メッセージング ブロック間で渡されるデータ ペイロードが格納される、基本的なメッセージ エンベロープ。

構文

template<class T>
class message : public ::Concurrency::details::_Runtime_object;

パラメーター

T
メッセージ内のペイロードのデータ型。

メンバー

パブリック typedef

名前 説明
type T の型エイリアス。

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

名前 説明
message 過負荷です。 message オブジェクトを構築します。
~message デストラクター message オブジェクトを破棄します。

パブリック メソッド

名前 説明
add_ref message オブジェクトの参照カウントに追加します。 メッセージの有効期間を決定するために、参照カウントを必要とするメッセージ ブロックに使用されます。
msg_id message オブジェクトの ID を返します。
remove_ref message オブジェクトの参照カウントから減算します。 メッセージの有効期間を決定するために、参照カウントを必要とするメッセージ ブロックに使用されます。

パブリック データ メンバー

名前 説明
payload message オブジェクトのペイロード。

解説

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

継承階層

message

要件

ヘッダー: agents.h

名前空間: concurrency

add_ref

message オブジェクトの参照カウントに追加します。 メッセージの有効期間を決定するために、参照カウントを必要とするメッセージ ブロックに使用されます。

long add_ref();

戻り値

参照カウントの新しい値。

メッセージ

message オブジェクトを構築します。

message(
    T const& _P);

message(
    T const& _P,
    runtime_object_identity _Id);

message(
    message const& _Msg);

message(
    _In_ message const* _Msg);

パラメーター

_P
このメッセージのペイロード。

_Id
このプロセスの一意の ID。

_Msg
message オブジェクトへの参照またはポインター。

解説

パラメーター _MsgNULL の場合、message オブジェクトへのポインターを引数として取るコンストラクターは、invalid_argument 例外をスローします。

~メッセージ

message オブジェクトを破棄します。

virtual ~message();

msg_id

message オブジェクトの ID を返します。

runtime_object_identity msg_id() const;

戻り値

runtime_object_identity オブジェクトの message です。

payload

message オブジェクトのペイロード。

T const payload;

remove_ref

message オブジェクトの参照カウントから減算します。 メッセージの有効期間を決定するために、参照カウントを必要とするメッセージ ブロックに使用されます。

long remove_ref();

戻り値

参照カウントの新しい値。

関連項目

コンカレンシー名前空間