1class ACE_Export ACE_Message_Block
2{
3public:
4 friend class ACE_Data_Block;
5/*******************************************************
6 * 函數聲明
7 *******************************************************/ 8/// Pointer to beginning of next read.
9/// 數據讀指針,實際上是一個相對起始地址的偏移量10 size_t rd_ptr_;
1112/// Pointer to beginning of next write.
13/// 數據寫指針,實際上是一個相對起始地址的偏移量14 size_t wr_ptr_;
1516/// Priority of message.
17/// 表示消息的優先級,用于優先級消息隊列18 unsigned long priority_;
1920#if defined (ACE_HAS_TIMED_MESSAGE_BLOCKS)
21/// Execution time associated with the message.
22/// 消息塊的時間屬性,用于實時消息隊列23 ACE_Time_Value execution_time_;
2425/// Absolute deadline time for message.26 ACE_Time_Value deadline_time_;
27#endif /* ACE_HAS_TIMED_MESSAGE_BLOCKS */
2829// = Links to other ACE_Message_Block *s.30/// Pointer to next message block in the chain.
31/// 消息鏈指針,多個消息塊可以連在一起,構成一個消息塊鏈32 ACE_Message_Block *cont_;
3334/// Pointer to next message in the list.
35/// 表示后一個消息指針36 ACE_Message_Block *next_;
3738/// Pointer to previous message in the list.
39/// 前一個消息指針40 ACE_Message_Block *prev_;
4142/// Misc flags (e.g., DONT_DELETE and USER_FLAGS).
43/// 是ACE_Data_Block刪除標志,表示該實例下的data_block_是否要刪除44 ACE_Message_Block::Message_Flags flags_;
4546/// Pointer to the reference counted data structure that contains the
47/// actual memory buffer.
48/// 數據塊指針49 ACE_Data_Block *data_block_;
5051/// The allocator used to destroy ourselves when release is called
52/// and create new message blocks on duplicate.
53/// 消息塊內存分配器54 ACE_Allocator *message_block_allocator_;
5556private:
57// = Disallow these operations for now (use <clone> instead).58 ACE_Message_Block &operator= (const ACE_Message_Block &);
59 ACE_Message_Block (const ACE_Message_Block &);
60 };