sig_block.c

来自「linux下qmail的源码 本人加了一些注释」· C语言 代码 · 共 41 行

C
41
字号
#include <signal.h>#include "sig.h"#include "hassgprm.h"void sig_block(sig)int sig;{#ifdef HASSIGPROCMASK  sigset_t ss;  sigemptyset(&ss);  sigaddset(&ss,sig);  sigprocmask(SIG_BLOCK,&ss,(sigset_t *) 0);#else  sigblock(1 << (sig - 1));#endif}void sig_unblock(sig)int sig;{#ifdef HASSIGPROCMASK  sigset_t ss;  sigemptyset(&ss);  sigaddset(&ss,sig);  sigprocmask(SIG_UNBLOCK,&ss,(sigset_t *) 0);#else  sigsetmask(sigsetmask(~0) & ~(1 << (sig - 1)));#endif}void sig_blocknone(){#ifdef HASSIGPROCMASK  sigset_t ss;  sigemptyset(&ss);  sigprocmask(SIG_SETMASK,&ss,(sigset_t *) 0);#else  sigsetmask(0);#endif}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?