summaryrefslogtreecommitdiff
path: root/ace/Signal.i
diff options
context:
space:
mode:
authorcleeland <cleeland@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-11-13 08:17:38 +0000
committercleeland <cleeland@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-11-13 08:17:38 +0000
commit0d4e28d6504f6d8e096aa080ad882a149607b40d (patch)
tree7e5203725cbd2943127f0ea2af48429712372ce8 /ace/Signal.i
parentb137f479711eec3db913a69c2a29b2fb7e4775a7 (diff)
downloadATCD-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.i8
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 */
}