message Class

The basic message envelope containing the data payload being passed between messaging blocks.

Syntax

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

Parameters

T
The data type of the payload within the message.

Members

Public Typedefs

Name Description
type A type alias for T.

Public Constructors

Name Description
message Overloaded. Constructs a message object.
~message Destructor Destroys the message object.

Public Methods

Name Description
add_ref Adds to the reference count for the message object. Used for message blocks that need reference counting to determine message lifetimes.
msg_id Returns the ID of the message object.
remove_ref Subtracts from the reference count for the message object. Used for message blocks that need reference counting to determine message lifetimes.

Public Data Members

Name Description
payload The payload of the message object.

Remarks

For more information, see Asynchronous Message Blocks.

Inheritance Hierarchy

message

Requirements

Header: agents.h

Namespace: concurrency

add_ref

Adds to the reference count for the message object. Used for message blocks that need reference counting to determine message lifetimes.

long add_ref();

Return Value

The new value of the reference count.

message

Constructs a message object.

message(
    T const& _P);

message(
    T const& _P,
    runtime_object_identity _Id);

message(
    message const& _Msg);

message(
    _In_ message const* _Msg);

Parameters

_P
The payload of this message.

_Id
The unique ID of this message.

_Msg
A reference or pointer to a message object.

Remarks

The constructor that takes a pointer to a message object as an argument throws an invalid_argument exception if the parameter _Msg is NULL.

~message

Destroys the message object.

virtual ~message();

msg_id

Returns the ID of the message object.

runtime_object_identity msg_id() const;

Return Value

The runtime_object_identity of the message object.

payload

The payload of the message object.

T const payload;

remove_ref

Subtracts from the reference count for the message object. Used for message blocks that need reference counting to determine message lifetimes.

long remove_ref();

Return Value

The new value of the reference count.

See also

concurrency Namespace