From b88ba4d99196ec4fbe71335b3022f53f13cc289a Mon Sep 17 00:00:00 2001 From: Simone Piccardi Date: Fri, 19 Apr 2002 22:34:24 +0000 Subject: [PATCH] Si prepara un esempio completo di sleep --- signal.tex | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/signal.tex b/signal.tex index 540f0e2..df7197a 100644 --- a/signal.tex +++ b/signal.tex @@ -1981,7 +1981,6 @@ quest'ultima. Per poter effettuare atomicamente la modifica della maschera dei segnali (di solito attivandone uno specifico) insieme alla sospensione del processo lo standard POSIX ha previsto la funzione \func{sigsuspend}, il cui prototipo è: - \begin{prototype}{signal.h} {int sigsuspend(const sigset\_t *mask)} @@ -1995,6 +1994,14 @@ prototipo \end{errlist}} \end{prototype} +Come esempio dell'uso di queste funzioni proviamo a riscrivere un'altra volta +l'esempio di implementazione di \code{sleep}. Abbiamo accennato in +\secref{sec:sig_sigaction} come con \func{sigaction} sia possibile bloccare +\macro{SIGALRM} nell'installazione dei manipolatori degli altri segnali, per +poter usare l'implementazione vista in \secref{fig:sig_sleep_incomplete} senza +interferenze. Questo però comporta una precauzione ulteriore al semplice uso +della funzione, vediamo allora come usando la nuova interfaccia è possibile +ottenere un'implementazione che non presenta neanche questa necessità. -- 2.30.2