diff options
author | cleeland <cleeland@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1997-11-13 08:17:38 +0000 |
---|---|---|
committer | cleeland <cleeland@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1997-11-13 08:17:38 +0000 |
commit | 0d4e28d6504f6d8e096aa080ad882a149607b40d (patch) | |
tree | 7e5203725cbd2943127f0ea2af48429712372ce8 /ace/Signal.i | |
parent | b137f479711eec3db913a69c2a29b2fb7e4775a7 (diff) | |
download | ATCD-0d4e28d6504f6d8e096aa080ad882a149607b40d.tar.gz |
* ace/Signal.i: Changed to use new Object Manager member.
* ace/Object_Manager.cpp: Added a new member to the Object
Manager--default_mask. This is the default signal mask employed
by ACE_Sig_Set. Moving the object into the OM saves cycles b/c we
only construct it once and just re-use every time.
* ace/Handle_Set.cpp: Added two new macros--ACE_DIV_BY_WORDSIZE and
ACE_MULT_BY_WORDSIZE--which either divide or multiply the argument
by ACE_Handle_Set::WORDSIZE. The manner in which this is
accomplished is governed by the #define
ACE_USE_SHIFT_FOR_EFFICIENCY--when defined, ACE tries to use
shifts to implement multiplication and division rather than actual
multiply and divide operations. Currently this is disabled.
Diffstat (limited to 'ace/Signal.i')
-rw-r--r-- | ace/Signal.i | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/ace/Signal.i b/ace/Signal.i index 9e00f3e8a49..ed39ddaa810 100644 --- a/ace/Signal.i +++ b/ace/Signal.i @@ -2,6 +2,7 @@ // $Id$ // Signal.i +#include "ace/Object_Manager.h" ACE_INLINE ACE_Sig_Set::ACE_Sig_Set (sigset_t *ss) @@ -225,13 +226,16 @@ ACE_Sig_Guard::ACE_Sig_Guard (ACE_Sig_Set *mask) // If MASK is 0 then block all signals! if (mask == 0) { +#if 0 ACE_Sig_Set smask (1); +#endif + #if defined (ACE_LACKS_PTHREAD_THR_SIGSETMASK) - ACE_OS::sigprocmask (SIG_BLOCK, (sigset_t *) smask, (sigset_t *) + ACE_OS::sigprocmask (SIG_BLOCK, (sigset_t *) ACE_Object_Manager::default_mask (), (sigset_t *) this->omask_); #else - ACE_OS::thr_sigsetmask (SIG_BLOCK, (sigset_t *) smask, (sigset_t *) + ACE_OS::thr_sigsetmask (SIG_BLOCK, (sigset_t *) ACE_Object_Manager::default_mask (), (sigset_t *) this->omask_); #endif /* ACE_LACKS_PTHREAD_THR_SIGSETMASK */ } |