(file) Return to Semaphore.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

Diff for /pegasus/src/Pegasus/Common/Semaphore.cpp between version 1.1.2.4 and 1.1.2.6

version 1.1.2.4, 2006/07/28 21:19:53 version 1.1.2.6, 2006/08/02 07:26:35
Line 39 
Line 39 
  
 PEGASUS_NAMESPACE_BEGIN PEGASUS_NAMESPACE_BEGIN
  
 static const int PEGASUS_SEM_VALUE_MAX = 0x0000ffff;  static const Uint32 PEGASUS_SEM_VALUE_MAX = 0x0000ffff;
  
 //============================================================================== //==============================================================================
 // //
Line 95 
Line 95 
 #endif #endif
 } }
  
 #if defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX)  #if defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX)
 // cleanup function // cleanup function
 static void semaphore_cleanup(void *arg) static void semaphore_cleanup(void *arg)
 { {
Line 114 
Line 114 
  
    // Push cleanup function onto cleanup stack    // Push cleanup function onto cleanup stack
    // The mutex will unlock if the thread is killed early    // The mutex will unlock if the thread is killed early
 #if defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX)  #if defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX)
     Threads::cleanup_push(&semaphore_cleanup, &_rep);     Threads::cleanup_push(&semaphore_cleanup, &_rep);
 #endif #endif
  
Line 136 
Line 136 
  
     // Since we push an unlock onto the cleanup stack     // Since we push an unlock onto the cleanup stack
    // We will pop it off to release the mutex when leaving the critical section.    // We will pop it off to release the mutex when leaving the critical section.
 #if defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX)  #if defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX)
    Threads::cleanup_pop(1);    Threads::cleanup_pop(1);
 #endif #endif
    // Release mutex to leave critical section.    // Release mutex to leave critical section.
Line 155 
Line 155 
    pthread_mutex_lock (&_rep.mutex);    pthread_mutex_lock (&_rep.mutex);
    Boolean timedOut = false;    Boolean timedOut = false;
  
 #if defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || \  #if defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX)
     defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX)  
    // Push cleanup function onto cleanup stack    // Push cleanup function onto cleanup stack
    // The mutex will unlock if the thread is killed early    // The mutex will unlock if the thread is killed early
    Thread::cleanup_push(&semaphore_cleanup, &_rep);    Thread::cleanup_push(&semaphore_cleanup, &_rep);
Line 194 
Line 193 
    // Decrement the waiters count.    // Decrement the waiters count.
    _rep.waiters--;    _rep.waiters--;
  
 #if defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || \  #if defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX)
     defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX)  
    // Since we push an unlock onto the cleanup stack    // Since we push an unlock onto the cleanup stack
    // We will pop it off to release the mutex when leaving the critical section.    // We will pop it off to release the mutex when leaving the critical section.
    Threads::cleanup_pop(1);    Threads::cleanup_pop(1);


Legend:
Removed from v.1.1.2.4  
changed lines
  Added in v.1.1.2.6

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2