summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>1996-11-20 09:02:38 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>1996-11-20 09:02:38 +0000
commit178cb03e620e7f736fb6529a888b5b7f68464ec9 (patch)
tree149af0bd72a8d602a27435dd5ee136c6ffd31e19
parenta7790f2bc72d0302ed1c7230b97d8da5b5f8e6bb (diff)
downloadATCD-178cb03e620e7f736fb6529a888b5b7f68464ec9.tar.gz
!!
-rw-r--r--ChangeLog-96b11
-rw-r--r--ace/OS.cpp64
-rw-r--r--examples/Shared_Malloc/test_multiple_mallocs.cpp3
-rw-r--r--tests/UPIPE_SAP_Test.cpp6
4 files changed, 47 insertions, 37 deletions
diff --git a/ChangeLog-96b b/ChangeLog-96b
index 059be169848..cf8cdc458bc 100644
--- a/ChangeLog-96b
+++ b/ChangeLog-96b
@@ -1,3 +1,11 @@
+<<<<<<< ChangeLog-96b
+Wed Nov 20 02:38:40 1996 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tests/UPIPE_SAP_Test.cpp: Disabled this test if we don't have
+ threads and (STREAM Pipes or Win32). Thanks to Thilo Kielmann's
+ <kielmann@informatik.uni-siegen.de> for this info.
+
+=======
Tue Nov 19 23:09:08 1996 Tim H. Harrison <harrison@lambada.cs.wustl.edu>
* ace/Log_Record.cpp (print): Added a call to ACE_OS::fflush
@@ -6,8 +14,11 @@ Tue Nov 19 23:09:08 1996 Tim H. Harrison <harrison@lambada.cs.wustl.edu>
We're unsure of the affects this will have on performance, so we
may change this back in the future.
+>>>>>>> 4.30
Tue Nov 19 00:06:57 1996 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+ * Released a beta version of ACE 4.0.33 for testing.
+
* ace/TTY_IO.h: Added the ACE_Export macro before the ACE_TTY_IO
class to make things work correctly for Win32 DLLs. Thanks
to William L. Gerecke <gerecke@rayva.org> for fixing this.
diff --git a/ace/OS.cpp b/ace/OS.cpp
index e1536cb94e1..1bb7b060fd1 100644
--- a/ace/OS.cpp
+++ b/ace/OS.cpp
@@ -299,49 +299,47 @@ ACE_Recursive_Thread_Mutex ACE_TSS_Cleanup::lock_;
void
ACE_TSS_Cleanup::exit (void *status)
{
-// ACE_TRACE ("ACE_TSS_Cleanup::exit");
+ // ACE_TRACE ("ACE_TSS_Cleanup::exit");
- {
- ACE_GUARD (ACE_Recursive_Thread_Mutex, ace_mon, ACE_TSS_Cleanup::lock_);
+ ACE_GUARD (ACE_Recursive_Thread_Mutex, ace_mon, ACE_TSS_Cleanup::lock_);
- // Prevent recursive deletions (note that when a recursive mutex
- // is first acquired it has a nesting level of 1...).
- if (ACE_TSS_Cleanup::lock_.get_nesting_level () > 1)
- return;
+ // Prevent recursive deletions (note that when a recursive mutex
+ // is first acquired it has a nesting level of 1...).
+ if (ACE_TSS_Cleanup::lock_.get_nesting_level () > 1)
+ return;
- ACE_thread_key_t key_arr[TLS_MINIMUM_AVAILABLE];
- int index = 0;
+ ACE_thread_key_t key_arr[TLS_MINIMUM_AVAILABLE];
+ int index = 0;
- ACE_TSS_Info *key_info = 0;
+ ACE_TSS_Info *key_info = 0;
- // Iterate through all the thread-specific items and free them all
- // up.
+ // Iterate through all the thread-specific items and free them all
+ // up.
- for (ACE_TSS_TABLE_ITERATOR iter (this->table_);
- iter.next (key_info) != 0;
- iter.advance ())
- {
- void *tss_info = 0;
+ for (ACE_TSS_TABLE_ITERATOR iter (this->table_);
+ iter.next (key_info) != 0;
+ iter.advance ())
+ {
+ void *tss_info = 0;
- int val = key_info->ref_table_.remove (ACE_TSS_Ref (ACE_OS::thr_self ()));
+ int val = key_info->ref_table_.remove (ACE_TSS_Ref (ACE_OS::thr_self ()));
- if ((ACE_OS::thr_getspecific (key_info->key_, &tss_info) == 0)
- && (key_info->destructor_)
- && tss_info)
- // Probably need to have an exception handler here...
- (*key_info->destructor_) (tss_info);
+ if ((ACE_OS::thr_getspecific (key_info->key_, &tss_info) == 0)
+ && (key_info->destructor_)
+ && tss_info)
+ // Probably need to have an exception handler here...
+ (*key_info->destructor_) (tss_info);
- if (key_info->ref_table_.size () == 0
- && key_info->tss_obj_ == 0)
- key_arr[index++] = key_info->key_;
- }
+ if (key_info->ref_table_.size () == 0
+ && key_info->tss_obj_ == 0)
+ key_arr[index++] = key_info->key_;
+ }
- for (int i = 0; i < index; i++)
- {
- ::TlsFree (key_arr[i]);
- this->table_.remove (ACE_TSS_Info (key_arr[i]));
- }
- }
+ for (int i = 0; i < index; i++)
+ {
+ ::TlsFree (key_arr[i]);
+ this->table_.remove (ACE_TSS_Info (key_arr[i]));
+ }
#if 0
::ExitThread ((DWORD) status);
diff --git a/examples/Shared_Malloc/test_multiple_mallocs.cpp b/examples/Shared_Malloc/test_multiple_mallocs.cpp
index 37845d25a44..ebedd12ae49 100644
--- a/examples/Shared_Malloc/test_multiple_mallocs.cpp
+++ b/examples/Shared_Malloc/test_multiple_mallocs.cpp
@@ -1,7 +1,8 @@
+// $Id$
+
// Test the capabilities of the ACE shared memory manager in terms of
// its ability to handle multiple mallocs rooted at different base
// addresses.
-// $Id$
#include "ace/Malloc.h"
#include "ace/Synch.h"
diff --git a/tests/UPIPE_SAP_Test.cpp b/tests/UPIPE_SAP_Test.cpp
index 72bbc80871c..b96a527be50 100644
--- a/tests/UPIPE_SAP_Test.cpp
+++ b/tests/UPIPE_SAP_Test.cpp
@@ -1,6 +1,6 @@
-// ============================================================================
// $Id$
+// ============================================================================
//
// = LIBRARY
// tests
@@ -151,7 +151,7 @@ main (int, char *argv[])
{
ACE_START_TEST ("UPIPE_SAP_Test.cpp");
-#if defined (ACE_HAS_THREADS)
+#if defined (ACE_HAS_THREADS) && (defined (ACE_HAS_STREAM_PIPES) || defined (ACE_WIN32))
// Spawn a peer2 thread.
if (ACE_Service_Config::thr_mgr ()->spawn (ACE_THR_FUNC (peer2),
(void *) 0,
@@ -161,7 +161,7 @@ main (int, char *argv[])
// Wait for peer2 and peer1 threads to exit.
ACE_Service_Config::thr_mgr ()->wait ();
#else
- ACE_ERROR ((LM_ERROR, "threads not supported on this platform\n"));
+ ACE_ERROR ((LM_ERROR, "threads and/or UPIPE not supported on this platform\n"));
#endif /* ACE_HAS_THREADS */
ACE_END_TEST;
return 0;