2 #if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
3 # include "ace/Guard_T.h"
4 #endif /* ACE_HAS_WIN32_OVERLAPPED_IO */
6 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
8 #if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
11 ACE_Message_Queue_NT::enqueue_tail (ACE_Message_Block *new_item,
12 ACE_Time_Value *timeout)
14 ACE_TRACE ("ACE_Message_Queue_NT::enqueue_tail");
15 return this->enqueue (new_item, timeout);
19 ACE_Message_Queue_NT::dequeue_head (ACE_Message_Block *&first_item,
20 ACE_Time_Value *timeout)
22 ACE_TRACE ("ACE_Message_Queue_NT::dequeue_head");
23 return this->dequeue (first_item, timeout);
27 ACE_Message_Queue_NT::is_full ()
29 ACE_TRACE ("ACE_Message_Queue_NT::is_full");
30 return false; // Always not full.
34 ACE_Message_Queue_NT::is_empty ()
36 ACE_TRACE ("ACE_Message_Queue_NT::is_empty");
37 ACE_GUARD_RETURN (ACE_SYNCH_MUTEX, ace_mon, this->lock_, false);
39 return this->cur_bytes_ > 0 || this->cur_count_ > 0 ? false : true;
43 ACE_Message_Queue_NT::message_bytes ()
45 ACE_TRACE ("ACE_Message_Queue_NT::message_bytes");
46 // Accessing to size_t must be atomic.
47 return this->cur_bytes_;
51 ACE_Message_Queue_NT::message_length ()
53 ACE_TRACE ("ACE_Message_Queue_NT::message_length");
54 // Accessing to size_t must be atomic.
55 return this->cur_length_;
59 ACE_Message_Queue_NT::message_count ()
61 ACE_TRACE ("ACE_Message_Queue_NT::message_count");
62 // Accessing to size_t must be atomic.
63 return this->cur_count_;
67 ACE_Message_Queue_NT::message_bytes (size_t new_value)
69 ACE_TRACE ("ACE_Message_Queue_NT::message_bytes");
70 ACE_GUARD (ACE_SYNCH_MUTEX, ace_mon, this->lock_);
72 this->cur_bytes_ = new_value;
76 ACE_Message_Queue_NT::message_length (size_t new_value)
78 ACE_TRACE ("ACE_Message_Queue_NT::message_length");
79 ACE_GUARD (ACE_SYNCH_MUTEX, ace_mon, this->lock_);
81 this->cur_length_ = new_value;
85 ACE_Message_Queue_NT::max_threads ()
87 ACE_TRACE ("ACE_Message_Queue_NT::max_threads");
88 return this->max_cthrs_;
92 ACE_Message_Queue_NT::deactivated ()
94 ACE_TRACE ("ACE_Message_Queue_NT::deactivated");
95 // Accessing to int must be atomic.
96 return this->state_ == ACE_Message_Queue_Base::DEACTIVATED;
100 ACE_Message_Queue_NT::completion_port ()
102 ACE_TRACE ("ACE_Message_Queue_NT::completion_port");
103 return this->completion_port_;
107 ACE_Message_Queue_NT::peek_dequeue_head (ACE_Message_Block *&first_item,
108 ACE_Time_Value *timeout)
110 ACE_UNUSED_ARG(first_item);
111 ACE_UNUSED_ARG(timeout);
112 ACE_NOTSUP_RETURN (-1);
115 ACE_INLINE ACE_Notification_Strategy *
116 ACE_Message_Queue_NT::notification_strategy ()
118 ACE_NOTSUP_RETURN (0);
122 ACE_Message_Queue_NT::notification_strategy (ACE_Notification_Strategy *)
126 #endif /* ACE_HAS_WIN32_OVERLAPPED_IO */
128 ACE_END_VERSIONED_NAMESPACE_DECL