summaryrefslogtreecommitdiff
path: root/ace/Thread.cpp
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>1996-11-17 00:40:23 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>1996-11-17 00:40:23 +0000
commitcdaa50473d4305fca20da3227099dcb1de31c1b8 (patch)
treed3c48504214f87beeb823ccd977e8f0ca0f0bfe2 /ace/Thread.cpp
parent655565f17014c6ffa30fcd70764e28fad8149ebf (diff)
downloadATCD-cdaa50473d4305fca20da3227099dcb1de31c1b8.tar.gz
Help!
Diffstat (limited to 'ace/Thread.cpp')
-rw-r--r--ace/Thread.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/ace/Thread.cpp b/ace/Thread.cpp
index ad3cffca16e..a1e9ea83e8f 100644
--- a/ace/Thread.cpp
+++ b/ace/Thread.cpp
@@ -40,8 +40,9 @@ ACE_Thread::spawn_n (ACE_thread_t thread_ids[],
void *arg,
long flags,
u_int priority,
- void **stack,
- size_t stack_size[])
+ void *stack[],
+ size_t stack_size[],
+ ACE_hthread_t thread_handles[])
{
ACE_TRACE ("ACE_Thread::spawn_n");
size_t i;
@@ -49,14 +50,21 @@ ACE_Thread::spawn_n (ACE_thread_t thread_ids[],
for (i = 0; i < n; i++)
{
ACE_thread_t t_id;
+ ACE_hthread_t t_handle;
int result = ACE_OS::thr_create
- (func, arg, flags, &t_id, 0, priority,
+ (func, arg, flags,
+ &t_id, &t_handle,
+ priority,
stack == 0 ? 0 : stack[i],
stack_size == 0 ? 0 : stack_size[i]);
if (result == 0)
- thread_ids[i] = t_id;
+ {
+ thread_ids[i] = t_id;
+ if (thread_handles != 0)
+ thread_handles[i] = t_handle;
+ }
else
// Bail out if error occurs.
break;