2 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
5 ACE_Condition<ACE_Thread_Mutex>::remove ()
7 // ACE_TRACE ("ACE_Condition<ACE_Thread_Mutex>::remove");
9 // <cond_destroy> is called in a loop if the condition variable is
10 // BUSY. This avoids a condition where a condition is signaled and
11 // because of some timing problem, the thread that is to be signaled
12 // has called the cond_wait routine after the signal call. Since
13 // the condition signal is not queued in any way, deadlock occurs.
19 this->removed_ = true;
21 while ((result = ACE_OS::cond_destroy (&this->cond_)) == -1
24 ACE_OS::cond_broadcast (&this->cond_);
31 ACE_INLINE ACE_Thread_Mutex &
32 ACE_Condition<ACE_Thread_Mutex>::mutex ()
34 // ACE_TRACE ("ACE_Condition<ACE_Thread_Mutex>::mutex");
38 ACE_END_VERSIONED_NAMESPACE_DECL