Quipex

signals

Apr 23rd, 2017
371
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.57 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <signal.h>
  4. #include <unistd.h>
  5. static void sigHandle(int);
  6.  
  7. void main(){
  8.     if(signal(SIGUSR1, sigHandle) == SIG_ERR){
  9.         perror("Can't handle a signal SIGUSR1.");
  10.         exit(1);
  11.     }
  12.     if(signal(SIGTERM, sigHandle) == SIG_ERR){
  13.         perror("Can't handle a signal SIGTERM.");
  14.         exit(1);
  15.     }
  16.     while(1){
  17.         pause();
  18.     }
  19. }
  20.  
  21. static void sigHandle(int signum){
  22.     if(signum == SIGUSR1){
  23.         printf("SIGUSR1 has been received.\n");
  24.     }
  25.     if(signum == SIGTERM){
  26.         printf("SIGTERM has been received, terminated.\n");
  27.         exit(0);
  28.     }
  29. }
Advertisement
Add Comment
Please, Sign In to add comment