__signal.h
上传用户:tsgydb
上传日期:2007-04-14
资源大小:10674k
文件大小:1k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. #include <sys/signal.h>
  2. #ifndef SIGCLD
  3. #define SIGCLD         SIGCHLD
  4. #endif
  5. /* #define sigmask(n)       ((unsigned int)1 << (((n) - 1) & (32 - 1))) */
  6. #define sigword(n)       (((unsigned int)((n) - 1))>>5)
  7. #define __SIGEMPTYSET    { 0, 0, 0, 0, 0, 0, 0, 0 }
  8. #define __SIGFILLSET    { 0xffffffff,0xffffffff,0xffffffff,0xffffffff,
  9.   0xffffffff,0xffffffff,0xffffffff,0xffffffff}
  10. #define __SIGADDSET(s, n)      ((s)->sigset[sigword(n)] |= sigmask(n))
  11. #define __SIGDELSET(s, n)      ((s)->sigset[sigword(n)] &= ~sigmask(n))
  12. #define __SIGISMEMBER(s, n)    ((s)->sigset[sigword(n)] & sigmask(n))
  13. #define SIGSET_SIZE sizeof(sigset_t)/sizeof(long)
  14. #define SIG_ANY(sig) sig_any(&sig)
  15. static inline int sig_any(sigset_t *sig) {
  16.   int i;
  17.   for (i=0; i < SIGSET_SIZE; i++)
  18.     if (sig->sigset[i] != 0)
  19.       return 1;
  20.   return 0;
  21. }