00001 /* -*- C++ -*- */ 00002 // $Id: Process_Semaphore.inl,v 1.1.1.1 2001/12/04 14:33:07 chad Exp $ 00003 00004 #if defined (ACE_WIN32) || defined (ACE_HAS_POSIX_SEM) || defined (ACE_PSOS) 00005 ACE_INLINE const ACE_sema_t & 00006 ACE_Process_Semaphore::lock (void) const 00007 { 00008 // ACE_TRACE ("ACE_Process_Semaphore::lock"); 00009 return this->lock_.lock (); 00010 } 00011 #endif /* ACE_WIN32 || ACE_HAS_POSIX_SEM || ACE_PSOS */ 00012 00013 // Acquire semaphore ownership. This calls <acquire> and is only here 00014 // to make the <ACE_Process_Semaphore> interface consistent with the 00015 // other synchronization APIs. 00016 00017 ACE_INLINE int 00018 ACE_Process_Semaphore::acquire_read (void) 00019 { 00020 return this->acquire (); 00021 } 00022 00023 // Acquire semaphore ownership. This calls <acquire> and is only here 00024 // to make the <ACE_Process_Semaphore> interface consistent with the 00025 // other synchronization APIs. 00026 00027 ACE_INLINE int 00028 ACE_Process_Semaphore::acquire_write (void) 00029 { 00030 return this->acquire (); 00031 } 00032 00033 // Conditionally acquire semaphore (i.e., won't block). This calls 00034 // <tryacquire> and is only here to make the <ACE_Process_Semaphore> 00035 // interface consistent with the other synchronization APIs. 00036 00037 ACE_INLINE int 00038 ACE_Process_Semaphore::tryacquire_read (void) 00039 { 00040 return this->tryacquire (); 00041 } 00042 00043 // Conditionally acquire semaphore (i.e., won't block). This calls 00044 // <tryacquire> and is only here to make the <ACE_Process_Semaphore> 00045 // interface consistent with the other synchronization APIs. 00046 00047 ACE_INLINE int 00048 ACE_Process_Semaphore::tryacquire_write (void) 00049 { 00050 return this->tryacquire (); 00051 } 00052 00053 // This is only here to make the <ACE_Process_Semaphore> 00054 // interface consistent with the other synchronization APIs. 00055 // Assumes the caller has already acquired the semaphore using one of 00056 // the above calls, and returns 0 (success) always. 00057 ACE_INLINE int 00058 ACE_Process_Semaphore::tryacquire_write_upgrade (void) 00059 { 00060 return 0; 00061 }
1.2.14 written by Dimitri van Heesch,
© 1997-2002