Recursive_Thread_Mutex.inl

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // Recursive_Thread_Mutex.inl,v 4.4 2006/05/29 18:47:16 schmidt Exp
00004 
00005 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
00006 
00007 ACE_INLINE ACE_recursive_thread_mutex_t &
00008 ACE_Recursive_Thread_Mutex::mutex (void)
00009 {
00010   return lock_;
00011 }
00012 
00013 ACE_INLINE ACE_thread_mutex_t &
00014 ACE_Recursive_Thread_Mutex::get_nesting_mutex (void)
00015 {
00016 #if defined (ACE_HAS_RECURSIVE_MUTEXES)
00017   return static_cast<ACE_thread_mutex_t &> (lock_);
00018 #else
00019   return lock_.nesting_mutex_;
00020 #endif /* ACE_HAS_RECURSIVE_MUTEXES */
00021 }
00022 
00023 ACE_INLINE void
00024 ACE_Recursive_Thread_Mutex::set_thread_id (ACE_thread_t t)
00025 {
00026 // ACE_TRACE ("ACE_Recursive_Thread_Mutex::set_thread_id");
00027 #if defined (ACE_HAS_RECURSIVE_MUTEXES)
00028   ACE_UNUSED_ARG (t);
00029 #else  /* ! ACE_HAS_RECURSIVE_MUTEXES */
00030   this->lock_.owner_id_ = t;
00031 #endif /* ! ACE_HAS_RECURSIVE_MUTEXES */
00032 }
00033 
00034 ACE_INLINE int
00035 ACE_Recursive_Thread_Mutex::acquire (void)
00036 {
00037   return ACE_OS::recursive_mutex_lock (&this->lock_);
00038 }
00039 
00040 ACE_INLINE int
00041 ACE_Recursive_Thread_Mutex::release (void)
00042 {
00043   return ACE_OS::recursive_mutex_unlock (&this->lock_);
00044 }
00045 
00046 ACE_INLINE int
00047 ACE_Recursive_Thread_Mutex::tryacquire (void)
00048 {
00049   return ACE_OS::recursive_mutex_trylock (&this->lock_);
00050 }
00051 
00052 ACE_INLINE int
00053 ACE_Recursive_Thread_Mutex::acquire (ACE_Time_Value &tv)
00054 {
00055   return ACE_OS::recursive_mutex_lock (&this->lock_, tv);
00056 }
00057 
00058 ACE_INLINE int
00059 ACE_Recursive_Thread_Mutex::acquire (ACE_Time_Value *tv)
00060 {
00061   return ACE_OS::recursive_mutex_lock (&this->lock_, tv);
00062 }
00063 
00064 ACE_INLINE int
00065 ACE_Recursive_Thread_Mutex::acquire_read (void)
00066 {
00067   return this->acquire ();
00068 }
00069 
00070 ACE_INLINE int
00071 ACE_Recursive_Thread_Mutex::acquire_write (void)
00072 {
00073   return this->acquire ();
00074 }
00075 
00076 ACE_INLINE int
00077 ACE_Recursive_Thread_Mutex::tryacquire_read (void)
00078 {
00079   return this->tryacquire ();
00080 }
00081 
00082 ACE_INLINE int
00083 ACE_Recursive_Thread_Mutex::tryacquire_write (void)
00084 {
00085   return this->tryacquire ();
00086 }
00087 
00088 ACE_INLINE int
00089 ACE_Recursive_Thread_Mutex::tryacquire_write_upgrade (void)
00090 {
00091   return 0;
00092 }
00093 
00094 ACE_END_VERSIONED_NAMESPACE_DECL
00095 

Generated on Thu Nov 9 09:42:01 2006 for ACE by doxygen 1.3.6