activemq-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tab...@apache.org
Subject svn commit: r1051257 - in /activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent: unix/ windows/
Date Mon, 20 Dec 2010 19:40:01 GMT
Author: tabish
Date: Mon Dec 20 19:40:01 2010
New Revision: 1051257

URL: http://svn.apache.org/viewvc?rev=1051257&view=rev
Log:
Perform the create and destroy operations in a more consist way.

Modified:
    activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/ConditionHandle.h
    activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/ConditionImpl.cpp
    activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/MutexHandle.h
    activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/MutexImpl.cpp
    activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/ConditionHandle.h
    activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/ConditionImpl.cpp
    activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/MutexHandle.h
    activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/MutexImpl.cpp

Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/ConditionHandle.h
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/ConditionHandle.h?rev=1051257&r1=1051256&r2=1051257&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/ConditionHandle.h
(original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/ConditionHandle.h
Mon Dec 20 19:40:01 2010
@@ -43,7 +43,6 @@ namespace concurrent {
         }
 
         ~ConditionHandle() {
-            pthread_cond_destroy( &condition );
         }
 
         // The actual condition object

Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/ConditionImpl.cpp
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/ConditionImpl.cpp?rev=1051257&r1=1051256&r2=1051257&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/ConditionImpl.cpp
(original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/ConditionImpl.cpp
Mon Dec 20 19:40:01 2010
@@ -76,6 +76,13 @@ ConditionHandle* ConditionImpl::create( 
 
 ////////////////////////////////////////////////////////////////////////////////
 void ConditionImpl::destroy( decaf::util::concurrent::ConditionHandle* handle ) {
+
+    if( handle == NULL ) {
+        throw RuntimeException(
+            __FILE__, __LINE__, "Handle to Condition was NULL." );
+    }
+
+    pthread_cond_destroy( &handle->condition );
     delete handle;
 }
 

Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/MutexHandle.h
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/MutexHandle.h?rev=1051257&r1=1051256&r2=1051257&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/MutexHandle.h
(original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/MutexHandle.h
Mon Dec 20 19:40:01 2010
@@ -36,7 +36,6 @@ namespace concurrent {
         }
 
         ~MutexHandle() {
-            pthread_mutex_destroy( &mutex );
         }
 
         // The mutex object.

Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/MutexImpl.cpp
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/MutexImpl.cpp?rev=1051257&r1=1051256&r2=1051257&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/MutexImpl.cpp
(original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/unix/MutexImpl.cpp
Mon Dec 20 19:40:01 2010
@@ -43,7 +43,6 @@ MutexHandle* MutexImpl::create() {
     std::auto_ptr<MutexHandle> handle( new MutexHandle );
 
     if( pthread_mutex_init( &( handle->mutex ), NULL ) != 0 ) {
-
         throw RuntimeException(
             __FILE__, __LINE__, "Failed to create Mutex object." );
     }
@@ -56,6 +55,13 @@ MutexHandle* MutexImpl::create() {
 
 ////////////////////////////////////////////////////////////////////////////////
 void MutexImpl::destroy( decaf::util::concurrent::MutexHandle* handle ) {
+
+    if( handle == NULL ) {
+        throw RuntimeException(
+            __FILE__, __LINE__, "Handle to Mutex was NULL." );
+    }
+
+    pthread_mutex_destroy( &handle->mutex );
     delete handle;
 }
 

Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/ConditionHandle.h
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/ConditionHandle.h?rev=1051257&r1=1051256&r2=1051257&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/ConditionHandle.h
(original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/ConditionHandle.h
Mon Dec 20 19:40:01 2010
@@ -39,8 +39,6 @@ namespace concurrent {
         }
 
         ~ConditionHandle() {
-            CloseHandle( semaphore );
-            ::DeleteCriticalSection( &criticalSection );
         }
 
         // The actual condition object

Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/ConditionImpl.cpp
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/ConditionImpl.cpp?rev=1051257&r1=1051256&r2=1051257&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/ConditionImpl.cpp
(original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/ConditionImpl.cpp
Mon Dec 20 19:40:01 2010
@@ -62,6 +62,15 @@ ConditionHandle* ConditionImpl::create( 
 
 ////////////////////////////////////////////////////////////////////////////////
 void ConditionImpl::destroy( decaf::util::concurrent::ConditionHandle* handle ) {
+
+    if( handle == NULL ) {
+        throw RuntimeException(
+            __FILE__, __LINE__, "Handle to Condition Object was Null." );
+    }
+
+    CloseHandle( handle->semaphore );
+    ::DeleteCriticalSection( &handle->criticalSection );
+
     delete handle;
 }
 

Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/MutexHandle.h
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/MutexHandle.h?rev=1051257&r1=1051256&r2=1051257&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/MutexHandle.h
(original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/MutexHandle.h
Mon Dec 20 19:40:01 2010
@@ -32,7 +32,6 @@ namespace concurrent {
         }
 
         ~MutexHandle() {
-            DeleteCriticalSection( &mutex );
         }
 
         // The mutex object.

Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/MutexImpl.cpp
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/MutexImpl.cpp?rev=1051257&r1=1051256&r2=1051257&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/MutexImpl.cpp
(original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/decaf/internal/util/concurrent/windows/MutexImpl.cpp
Mon Dec 20 19:40:01 2010
@@ -52,6 +52,14 @@ MutexHandle* MutexImpl::create() {
 
 ////////////////////////////////////////////////////////////////////////////////
 void MutexImpl::destroy( decaf::util::concurrent::MutexHandle* handle ) {
+
+    if( handle == NULL ) {
+        throw RuntimeException(
+            __FILE__, __LINE__, "Handle to Mutex Object was Null." );
+    }
+
+    DeleteCriticalSection( &handle->mutex );
+
     delete handle;
 }
 



Mime
View raw message