用於在接受到某個信號之前,臨時用mask替換進程的信號掩碼,並暫停進程執行,直到收到信號為止。
- /*The sigsuspend() function replaces the current signal mask of the calling thread with the set of signals pointed
- to by sigmask and then suspends the thread until delivery of a signal whose action is either to execute a signal-catching
- function or to terminate the process. This will not cause any other signals that may have been pending on the process to
- become pending on the thread.
- If the action is to terminate the process then sigsuspend() will never return. If the action is to execute a signal-catching
- function, thensigsuspend() will return after the signal-catching function returns, with the signal mask restored to the set
- that existed prior to thesigsuspend() call.
- It is not possible to block signals that cannot be ignored. This is enforced by the system without causing an error to be indicated.*/