From: Simone Piccardi Date: Fri, 12 Apr 2002 17:41:36 +0000 (+0000) Subject: Rimesso pezzo perso. X-Git-Url: https://gapil.gnulinux.it/gitweb/?a=commitdiff_plain;h=b19105fc2dcf0dc62a64b093f155c0db8e8ad5a6;p=gapil.git Rimesso pezzo perso. --- diff --git a/signal.tex b/signal.tex index b766ea6..1a2f3d0 100644 --- a/signal.tex +++ b/signal.tex @@ -84,6 +84,20 @@ attivo. In questo caso è possibile una situazione in cui i segnali possono essere perduti. Si consideri il seguente segmento di codice, in cui la prima operazione del manipolatore è quella di reinstallare se stesso: +\footnotesize +\begin{lstlisting}[labelstep=0,frame=,indent=1cm]{} + int sig_handler(); /* handler function */ + ... + signal(SIGINT, sig_handler); /* establish handler */ + ... + +int sig_handler() +{ + signal(SIGINT, sig_handler); /* restablish handler */ + ... /* process signal */ +} +\end{lstlisting} +\normalsize se un secondo segnale arriva prima che il manipolatore invocato dal primo abbia eseguito la reinstallazione di se stesso il segnale può essere perso o causare il comportamento originale assegnato al segnale (in genere la