summaryrefslogtreecommitdiff
path: root/ace/Select_Reactor_T.h
diff options
context:
space:
mode:
authornanbor <nanbor@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-07-21 10:06:28 +0000
committernanbor <nanbor@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-07-21 10:06:28 +0000
commit96c3e9ef1bffabc52d3848c43790dacd8e65497e (patch)
tree62003d1cf6be5d3e18bead66bb1e7e6fcb292c4e /ace/Select_Reactor_T.h
parent6d1c286aa59a8665c741c89b3b8760327763238e (diff)
downloadATCD-96c3e9ef1bffabc52d3848c43790dacd8e65497e.tar.gz
ChangeLogTag:Wed Jul 21 04:32:20 1999 Nanbor Wang <nanbor@cs.wustl.edu>
Diffstat (limited to 'ace/Select_Reactor_T.h')
-rw-r--r--ace/Select_Reactor_T.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/ace/Select_Reactor_T.h b/ace/Select_Reactor_T.h
index 6c6a41e71e5..e4ee05b97ea 100644
--- a/ace/Select_Reactor_T.h
+++ b/ace/Select_Reactor_T.h
@@ -193,6 +193,18 @@ public:
// Current <alertable_handle_events> is identical to
// <handle_events>.
+ // = Event handling control.
+
+ virtual int deactivated (void);
+ // Return the status of Reactor. If this function returns 0, the reactor is
+ // actively handling events. If it returns non-zero, <handling_events> and
+ // <handle_alertable_events> return -1 immediately.
+
+ virtual void deactivate (int do_stop);
+ // Control whether the Reactor will handle any more incoming events or not.
+ // If <do_stop> == 1, the Reactor will be disabled. By default, a reactor
+ // is in active state and can be deactivated/reactived as wish.
+
// = Register and remove <ACE_Event_Handler>s.
virtual int register_handler (ACE_Event_Handler *eh,
ACE_Reactor_Mask mask);
@@ -600,6 +612,9 @@ protected:
int handle_events_i (ACE_Time_Value *max_wait_time = 0);
// Stops the VC++ compiler from bitching about exceptions and destructors
+ sig_atomic_t deactivated_;
+ // This flag is used to keep track of whether we are actively handling
+ // events or not.
private:
ACE_UNIMPLEMENTED_FUNC (ACE_Select_Reactor_T (const ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN> &))