00001 // -*- C++ -*- 00002 // 00003 // $Id: RW_Process_Mutex.inl 69051 2005-10-28 16:14:56Z ossama $ 00004 00005 ACE_BEGIN_VERSIONED_NAMESPACE_DECL 00006 00007 // Explicitly destroy the mutex. 00008 ACE_INLINE int 00009 ACE_RW_Process_Mutex::remove (void) 00010 { 00011 return this->lock_.remove (); 00012 } 00013 00014 // Acquire lock ownership (wait on priority queue if necessary). 00015 ACE_INLINE int 00016 ACE_RW_Process_Mutex::acquire (void) 00017 { 00018 return this->lock_.acquire (); 00019 } 00020 00021 // Conditionally acquire lock (i.e., don't wait on queue). 00022 ACE_INLINE int 00023 ACE_RW_Process_Mutex::tryacquire (void) 00024 { 00025 return this->lock_.tryacquire (); 00026 } 00027 00028 // Release lock and unblock a thread at head of priority queue. 00029 ACE_INLINE int 00030 ACE_RW_Process_Mutex::release (void) 00031 { 00032 return this->lock_.release (); 00033 } 00034 00035 // Acquire lock ownership (wait on priority queue if necessary). 00036 ACE_INLINE int 00037 ACE_RW_Process_Mutex::acquire_read (void) 00038 { 00039 return this->lock_.acquire_read (); 00040 } 00041 00042 // Acquire lock ownership (wait on priority queue if necessary). 00043 ACE_INLINE int 00044 ACE_RW_Process_Mutex::acquire_write (void) 00045 { 00046 return this->lock_.acquire_write (); 00047 } 00048 00049 // Conditionally acquire a lock (i.e., won't block). 00050 ACE_INLINE int 00051 ACE_RW_Process_Mutex::tryacquire_read (void) 00052 { 00053 return this->lock_.tryacquire_read (); 00054 } 00055 00056 // Conditionally acquire a lock (i.e., won't block). 00057 ACE_INLINE int 00058 ACE_RW_Process_Mutex::tryacquire_write (void) 00059 { 00060 return this->lock_.tryacquire_write (); 00061 } 00062 00063 // Conditionally upgrade a lock (i.e., won't block). 00064 ACE_INLINE int 00065 ACE_RW_Process_Mutex::tryacquire_write_upgrade (void) 00066 { 00067 return this->lock_.tryacquire_write_upgrade (); 00068 } 00069 00070 ACE_INLINE const ACE_File_Lock & 00071 ACE_RW_Process_Mutex::lock (void) const 00072 { 00073 // ACE_TRACE ("ACE_RW_Process_Mutex::lock"); 00074 return this->lock_; 00075 } 00076 00077 ACE_END_VERSIONED_NAMESPACE_DECL