>>-sigsuspend--mask--------------------------------------------><
Function
sigsuspend invokes the sigsuspend callable service to
replace a thread's current signal mask with a new signal mask; then
it suspends the caller's thread until delivery of a signal whose
action is either to process a signal-catching service or to end the
thread.
Parameters
- mask
- The new signal mask, a string of up to 64 characters with the
values 0 or 1. The first character represents signal number
1. A string shorter than 64 characters is padded on the right with
zeros. For more information on signals, see Using the REXX signal services.
Usage notes
- The caller's thread starts running again when it receives one
of the signals not blocked by the mask set by this call, or a system
failure occurs that sets the return code to some value other than
EINTR.
- The signal mask represents a set of signals that will be blocked.
Blocked signals do not wake up the suspended service. The signals SIGSTOP and SIGKILL cannot
be blocked or ignored; they are delivered to the program no matter
what the signal mask specifies.
- If the signal action is to end the thread, the sigsuspend service
does not return.
- All pending unblocked signals are moved from the process level
to the current thread.
Example
In the following example, assume that
sigmask was assigned
a value earlier in the exec:
"sigsuspend" sigmask