Restore the environment saved by sigsetjmp(), including the signal mask
#include <setjmp.h> void siglongjmp( sigjmp_buf env, int val );
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The siglongjmp() function is a superset of the longjmp() function, but also restores the thread's saved signal mask if (and only if) one was saved in the env argument by a previous call to sigsetjmp().
Don't use longjmp() or siglongjmp() to restore an environment saved by a call to setjmp() or sigsetjmp() in another thread. If you're lucky, your application will crash; if not, it'll look as if it works for a while, until random scribbling on the stack causes it to crash. |
The same values that longjmp() returns.
See longjmp().
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | No |
Signal handler | Yes |
Thread | Yes |
longjmp(), pthread_sigmask(), sigaction(), sigprocmask(), sigsuspend()