The sigsuspend callable service replaces a thread's current signal mask with a new signal mask. It then 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.
Operation | Environment |
---|---|
Authorization: | Problem Program or Supervisor State, PSW key when the process was created (not PSW key 0) |
Dispatchable unit mode: | Task |
Cross memory mode: | PASN = HASN |
AMODE (BPX1SSU): | 31-bit |
AMODE (BPX4SSU): | 64-bit |
ASC mode: | Primary mode |
Interrupt status: | Enabled for interrupts |
Locks: | Unlocked |
Control parameters: | All parameters must be addressable by the caller and in the primary address space. |
|
AMODE 64 callers use BPX4SSU with the same parameter.
The name of an 8-byte area that contains a 64-bit signal mask that is set before waiting for a signal, and during the execution of any signal catcher. The leftmost bit represent signals 1 and the rightmost bit represents signal 64. Bits that are set to 1 represent signals that are blocked.
The name of a fullword in which the sigsuspend service returns a -1 if it returns to its caller.
Return_code | Explanation |
---|---|
EINTR | A signal was received and handled successfully. |
The name of a fullword in which the sigsuspend service stores the reason code. The sigsuspend service returns Reason_code only if Return_value is -1. Reason_code further qualifies the Return_code value. For the reason codes, see z/OS UNIX System Services Messages and Codes.
To be XPG4 compliant, this is the signal mask that is installed when a signal catcher performs a normal return.
To be XPG4 compliant, the signal mask that is installed before calling a signal catcher is calculated by taking the union of PPSCATCHERTMASK, PPSDSAMASK, and the signal that caused the interrupt.
See The relationship of z/OS UNIX signals to callable services.
See BPX1SSU (sigsuspend) example for an example using this callable service.