sig_block.c
来自「daemontools-0.76.tar.gz是在linux环境下自动监控进程的」· C语言 代码 · 共 41 行
C
41 行
/* Public domain. */#include <signal.h>#include "sig.h"#include "hassgprm.h"void sig_block(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(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(void){#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 + -
显示快捷键?