From b19105fc2dcf0dc62a64b093f155c0db8e8ad5a6 Mon Sep 17 00:00:00 2001 From: Simone Piccardi Date: Fri, 12 Apr 2002 17:41:36 +0000 Subject: [PATCH] Rimesso pezzo perso. --- signal.tex | 14 ++++++++++++++ 1 file changed, 14 insertions(+) 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 -- 2.30.2