872_____________________________________________ 14

SIGINT        (, 
Ctrl+C).      INT 23

SIGSEGV      .     
_exit(l)

SIGTERM     .     
_exit(l)

SIGUSR1,    (  Win32)  -
SIGUSR2,  ,   raise.    
SIGUSR3    

SIGBREAK   Ctrl-Break

  signal   :   
sig   func    .  func  
        -
: SIG_DFL   , SIG_IGN   -
  ,  SIG_ERR   . :

signal(SIGINT, SIG_ERR); //    


signal(SIGINT, SIG IGN); //   SIGINT

         -
  ,    . , ,   -
        
SIGUSR1.     Handl_SIGUSRl.  
     fptr:

typedef void (*fptr)(int);

He      

ftinclude <signal.h>

 -      :

signal(SIGUSR1, (fptr)Handl_SIGUSRl);

    Handl_SIGUSRl   
SIGUSR1.         -
:

raise(SIGUSR1) ;

   ,  
   .       -
 signal     ,   -
   ,       SIG_DFL.
 ,      ,    
 signal,         
  .       -
 signal.        :

void Handl_SIGUSRl(int N)

(

if(Message Dig("?", mtConfirmation,

TMsgDIgButtons()  mbYes mbNo,0) == mrYes)
//   :

signal(SIGUSR1, Handl_SIGUSRl) ;

else exit(EXIT_SUCCESS);

)