summaryrefslogtreecommitdiff
path: root/ace/Thread_Manager.h
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>1997-10-03 21:05:36 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>1997-10-03 21:05:36 +0000
commit75a18c0cf09495413c716f2bb29703512a184238 (patch)
treea1f4804c185fd232d28a89bbce6a5e31bea8b657 /ace/Thread_Manager.h
parent5b329a419ab8c7eda582dd146c6c4b42a709ad60 (diff)
downloadATCD-75a18c0cf09495413c716f2bb29703512a184238.tar.gz
*** empty log message ***
Diffstat (limited to 'ace/Thread_Manager.h')
-rw-r--r--ace/Thread_Manager.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/ace/Thread_Manager.h b/ace/Thread_Manager.h
index 5ed510c68d6..a65f985becc 100644
--- a/ace/Thread_Manager.h
+++ b/ace/Thread_Manager.h
@@ -83,6 +83,12 @@ private:
// Stores the cleanup info for a thread.
// @@ Note, this should be generalized to be a stack of
// <ACE_Cleanup_Info>s.
+
+ long flags_;
+ // Keeps track of whether this thread was created "detached" or not.
+ // If a thread is *not* created detached then if someone calls
+ // <ACE_Thread_Manager::wait>, we need to join with that thread (and
+ // close down the handle).
};
// Forward declaration.
@@ -348,13 +354,17 @@ protected:
// Locate the index of the table slot occupied by <task>. Returns
// -1 if <task> is not in the table doesn't contain <task>.
- int insert_thr (ACE_thread_t t_id, ACE_hthread_t, int grp_id = -1);
+ int insert_thr (ACE_thread_t t_id,
+ ACE_hthread_t,
+ int grp_id = -1,
+ long flags = 0);
// Insert a thread in the table (checks for duplicates).
int append_thr (ACE_thread_t t_id, ACE_hthread_t,
ACE_Thread_State,
int grp_id,
- ACE_Task_Base *task = 0);
+ ACE_Task_Base *task = 0,
+ long flags = 0);
// Append a thread in the table (adds at the end, growing the table
// if necessary).