diff options
author | levine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1997-10-15 14:31:18 +0000 |
---|---|---|
committer | levine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1997-10-15 14:31:18 +0000 |
commit | 4a20c06d2c02a7e1a93412df8e99094c904a62a4 (patch) | |
tree | 0eaf406c387494c46b4f65286b1309a8e10e953d /examples/Threads | |
parent | cc847ed14d6e74b41c207547a341a562b5953f09 (diff) | |
download | ATCD-4a20c06d2c02a7e1a93412df8e99094c904a62a4.tar.gz |
(worker): convert void *c to long if ACE_HAS_64BIT_LONGS. Changed name of "lock" to "printf_lock" to avoid collision with lock () in DEC cxx iostream.hxx.
Diffstat (limited to 'examples/Threads')
-rw-r--r-- | examples/Threads/thread_specific.cpp | 46 |
1 files changed, 25 insertions, 21 deletions
diff --git a/examples/Threads/thread_specific.cpp b/examples/Threads/thread_specific.cpp index 6948db300ca..8baa46f6f8f 100644 --- a/examples/Threads/thread_specific.cpp +++ b/examples/Threads/thread_specific.cpp @@ -59,7 +59,7 @@ int Errno::flags_; static ACE_TSS<Errno> tss_error; // Serializes output via cout. -static ACE_SYNCH_MUTEX lock; +static ACE_SYNCH_MUTEX printf_lock; #if defined (ACE_HAS_THREADS) typedef ACE_TSS_Guard<ACE_Thread_Mutex> GUARD; @@ -80,7 +80,11 @@ cleanup (void *ptr) static void * worker (void *c) { +#if defined (ACE_HAS_64BIT_LONGS) + int count = long (c); +#else /* ! ACE_HAS_64BIT_LONGS */ int count = int (c); +#endif /* ! ACE_HAS_64BIT_LONGS */ ACE_thread_key_t key = ACE_OS::NULL_key; int *ip = 0; @@ -99,25 +103,25 @@ worker (void *c) for (int i = 0; i < count; i++) { if (ACE_OS::thr_keycreate (&key, cleanup) == -1) - ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_keycreate")); + ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_keycreate")); ACE_NEW_RETURN (ip, int, 0); ACE_DEBUG ((LM_DEBUG, "(%t) in worker 1, key = %d, ip = %x\n", key, ip)); if (ACE_OS::thr_setspecific (key, (void *) ip) == -1) - ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_setspecific")); + ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_setspecific")); if (ACE_OS::thr_getspecific (key, (void **) &ip) == -1) - ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_setspecific")); + ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_setspecific")); if (ACE_OS::thr_setspecific (key, (void *) 0) == -1) - ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_setspecific")); + ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_setspecific")); delete ip; if (ACE_OS::thr_keyfree (key) == -1) - ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_keyfree")); + ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_keyfree")); // Cause an error. ACE_OS::read (ACE_INVALID_HANDLE, 0, 0); @@ -134,35 +138,35 @@ worker (void *c) ACE_hthread_t handle; ACE_Thread::self (handle); - // Use the guard to serialize access to printf... - ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, lock, 0); + // Use the guard to serialize access to printf... + ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, printf_lock, 0); - ACE_OS::printf ("(%u) errno = %d, lineno = %d, flags = %d\n", - handle, tss_error->error (), tss_error->line (), - tss_error->flags () ); + ACE_OS::printf ("(%u) errno = %d, lineno = %d, flags = %d\n", + handle, tss_error->error (), tss_error->line (), + tss_error->flags () ); } key = ACE_OS::NULL_key; if (ACE_OS::thr_keycreate (&key, cleanup) == -1) - ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_keycreate")); + ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_keycreate")); ACE_NEW_RETURN (ip, int, 0); ACE_DEBUG ((LM_DEBUG, "(%t) in worker 2, key = %d, ip = %x\n", key, ip)); if (ACE_OS::thr_setspecific (key, (void *) ip) == -1) - ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_setspecific")); + ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_setspecific")); if (ACE_OS::thr_getspecific (key, (void **) &ip) == -1) - ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_setspecific")); + ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_setspecific")); if (ACE_OS::thr_setspecific (key, (void *) 0) == -1) - ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_setspecific")); + ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_setspecific")); delete ip; if (ACE_OS::thr_keyfree (key) == -1) - ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_keyfree")); + ACE_ERROR ((LM_ERROR, "(%t) %p\n", "ACE_OS::thr_keyfree")); } ACE_DEBUG ((LM_DEBUG, "(%t) exiting\n")); @@ -191,9 +195,9 @@ main (int argc, char *argv[]) #if defined (ACE_HAS_THREADS) if (ACE_Thread_Manager::instance ()->spawn_n (threads, - ACE_THR_FUNC (&worker), - (void *) count, - THR_BOUND | THR_DETACHED) == -1) + ACE_THR_FUNC (&worker), + (void *) count, + THR_BOUND | THR_DETACHED) == -1) ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "ACE_Thread_Manager::spawn_n"), -1); ACE_Thread_Manager::instance ()->wait (); @@ -215,7 +219,7 @@ int main (int, char *[]) { ACE_ERROR_RETURN ((LM_ERROR, - "ACE doesn't support support threads on this platform (yet)\n"), - -1); + "ACE doesn't support support threads on this platform (yet)\n"), + -1); } #endif /* ACE_HAS_THREADS */ |