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

MySQL数据库

开发平台:

Visual C++

  1. #ifndef __sys_signal_h
  2. #define __sys_signal_h
  3. #define NSIG 32
  4. /*
  5.  * If any signal defines (SIG*) are added, deleted, or changed, the same
  6.  * changes must be made in /usr/include/signal.h as well.
  7.  */
  8. #define SIGHUP 1 /* hangup */
  9. #define SIGINT 2 /* interrupt */
  10. #define SIGQUIT 3 /* quit */
  11. #define SIGILL 4 /* illegal instruction (not reset when caught) */
  12. #define SIGTRAP 5 /* trace trap (not reset when caught) */
  13. #define SIGIOT 6 /* IOT instruction */
  14. #define SIGABRT 6 /* used by abort, replace SIGIOT in the future */
  15. #define SIGEMT 7 /* EMT instruction */
  16. #define SIGFPE 8 /* floating point exception */
  17. #define SIGKILL 9 /* kill (cannot be caught or ignored) */
  18. #define SIGBUS 10 /* bus error */
  19. #define SIGSEGV 11 /* segmentation violation */
  20. #define SIGSYS 12 /* bad argument to system call */
  21. #define SIGPIPE 13 /* write on a pipe with no one to read it */
  22. #define SIGALRM 14 /* alarm clock */
  23. #define SIGTERM 15 /* software termination signal from kill */
  24. #define SIGURG 16 /* urgent condition on IO channel */
  25. #define SIGSTOP 17 /* sendable stop signal not from tty */
  26. #define SIGTSTP 18 /* stop signal from tty */
  27. #define SIGCONT 19 /* continue a stopped process */
  28. #define SIGCHLD 20 /* to parent on child stop or exit */
  29. #define SIGCLD 20 /* System V name for SIGCHLD */
  30. #define SIGTTIN 21 /* to readers pgrp upon background tty read */
  31. #define SIGTTOU 22 /* like TTIN for output if (tp->t_local&LTOSTOP) */
  32. #define SIGIO 23 /* input/output possible signal */
  33. #define SIGPOLL SIGIO /* System V name for SIGIO */
  34. #define SIGXCPU 24 /* exceeded CPU time limit */
  35. #define SIGXFSZ 25 /* exceeded file size limit */
  36. #define SIGVTALRM 26 /* virtual time alarm */
  37. #define SIGPROF 27 /* profiling time alarm */
  38. #define SIGWINCH 28 /* window changed */
  39. #define SIGLOST 29 /* resource lost (eg, record-lock lost) */
  40. #define SIGUSR1 30 /* user defined signal 1 */
  41. #define SIGUSR2 31 /* user defined signal 2 */
  42. struct sigvec {
  43. void (*sv_handler)(); /* signal handler */
  44. int sv_mask; /* signal mask to apply */
  45. int sv_flags; /* see signal options below */
  46. };
  47. #define SV_ONSTACK 0x0001 /* take signal on signal stack */
  48. #define SV_INTERRUPT 0x0002 /* do not restart system on signal return */
  49. #define SV_RESETHAND 0x0004 /* reset signal handler to SIG_DFL when signal taken */
  50. /*
  51.  * If any SA_NOCLDSTOP or SV_NOCLDSTOP is change, the same
  52.  * changes must be made in /usr/include/signal.h as well.
  53.  */
  54. #define SV_NOCLDSTOP 0x0008 /* don't send a SIGCHLD on child stop */
  55. #define SA_ONSTACK SV_ONSTACK
  56. #define SA_INTERRUPT SV_INTERRUPT
  57. #define SA_RESETHAND SV_RESETHAND
  58. #define SA_NOCLDSTOP SV_NOCLDSTOP
  59. #define sv_onstack sv_flags /* isn't compatibility wonderful! */
  60. /*
  61.  * If SIG_ERR, SIG_DFL, SIG_IGN, or SIG_HOLD are changed, the same changes
  62.  * must be made in /usr/include/signal.h as well.
  63.  */
  64. #define SIG_ERR (void (*)())-1
  65. #define SIG_DFL (void (*)())0
  66. #define SIG_IGN (void (*)())1
  67. /*
  68.  * Macro for converting signal number to a mask suitable for sigblock().
  69.  */
  70. #define sigmask(m) (1 << ((m)-1))
  71. /*
  72.  * If SIG_BLOCK, SIG_UNBLOCK, or SIG_SETMASK are changed, the same changes
  73.  * must be made in /usr/include/signal.h as well.
  74.  */
  75. #define SIG_BLOCK 0x0001
  76. #define SIG_UNBLOCK 0x0002
  77. #define SIG_SETMASK 0x0004
  78. /*
  79.  * If changes are made to sigset_t or struct sigaction, the same changes
  80.  * must be made in /usr/include/signal.h as well.
  81.  */
  82. #include <sys/stdtypes.h>
  83. struct sigaction {
  84. void  (*sa_handler)();
  85. sigset_t sa_mask;
  86. int sa_flags;
  87. };
  88. #endif /* !__sys_signal_h */