Merge pull request #2301 from sonndinh/remove-dup-reactor-functions
[ACE_TAO.git] / ACE / ace / Thread_Mutex.inl
blobe12b6829f49a4846c0009cae7d90a9e9dcc0b579
1 // -*- C++ -*-
2 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
4 ACE_INLINE const ACE_thread_mutex_t &
5 ACE_Thread_Mutex::lock () const
7 // ACE_TRACE ("ACE_Thread_Mutex::lock");
8   return this->lock_;
11 ACE_INLINE ACE_thread_mutex_t &
12 ACE_Thread_Mutex::lock ()
14 // ACE_TRACE ("ACE_Thread_Mutex::lock");
15   return this->lock_;
18 ACE_INLINE int
19 ACE_Thread_Mutex::acquire_read ()
21 // ACE_TRACE ("ACE_Thread_Mutex::acquire_read");
22   return ACE_OS::thread_mutex_lock (&this->lock_);
25 ACE_INLINE int
26 ACE_Thread_Mutex::acquire_write ()
28 // ACE_TRACE ("ACE_Thread_Mutex::acquire_write");
29   return ACE_OS::thread_mutex_lock (&this->lock_);
32 ACE_INLINE int
33 ACE_Thread_Mutex::tryacquire_read ()
35 // ACE_TRACE ("ACE_Thread_Mutex::tryacquire_read");
36   return ACE_OS::thread_mutex_trylock (&this->lock_);
39 ACE_INLINE int
40 ACE_Thread_Mutex::tryacquire_write ()
42 // ACE_TRACE ("ACE_Thread_Mutex::tryacquire_write");
43   return ACE_OS::thread_mutex_trylock (&this->lock_);
46 ACE_INLINE int
47 ACE_Thread_Mutex::tryacquire_write_upgrade ()
49 // ACE_TRACE ("ACE_Thread_Mutex::tryacquire_write_upgrade");
50   return 0;
53 ACE_INLINE int
54 ACE_Thread_Mutex::acquire ()
56 // ACE_TRACE ("ACE_Thread_Mutex::acquire");
57   return ACE_OS::thread_mutex_lock (&this->lock_);
60 ACE_INLINE int
61 ACE_Thread_Mutex::acquire (ACE_Time_Value &tv)
63   // ACE_TRACE ("ACE_Thread_Mutex::acquire");
64   return ACE_OS::thread_mutex_lock (&this->lock_, tv);
67 ACE_INLINE int
68 ACE_Thread_Mutex::acquire (ACE_Time_Value *tv)
70   // ACE_TRACE ("ACE_Thread_Mutex::acquire");
71   return ACE_OS::thread_mutex_lock (&this->lock_, tv);
74 ACE_INLINE int
75 ACE_Thread_Mutex::tryacquire ()
77 // ACE_TRACE ("ACE_Thread_Mutex::tryacquire");
78   return ACE_OS::thread_mutex_trylock (&this->lock_);
81 ACE_INLINE int
82 ACE_Thread_Mutex::release ()
84 // ACE_TRACE ("ACE_Thread_Mutex::release");
85   return ACE_OS::thread_mutex_unlock (&this->lock_);
88 ACE_INLINE int
89 ACE_Thread_Mutex::remove ()
91 // ACE_TRACE ("ACE_Thread_Mutex::remove");
92   int result = 0;
93   if (!this->removed_)
94     {
95       this->removed_ = true;
96       result = ACE_OS::thread_mutex_destroy (&this->lock_);
97     }
98   return result;
101 ACE_END_VERSIONED_NAMESPACE_DECL