From: Simone Piccardi Date: Fri, 8 Mar 2002 20:02:00 +0000 (+0000) Subject: Si prosegue con nanosleep ... X-Git-Url: https://gapil.gnulinux.it/gitweb/?a=commitdiff_plain;h=0df8310fbad12660d8de351c7550010943a3a167;p=gapil.git Si prosegue con nanosleep ... --- diff --git a/signal.tex b/signal.tex index 4fbe0b2..eb939d9 100644 --- a/signal.tex +++ b/signal.tex @@ -1298,17 +1298,24 @@ prototipo timespec *rem)} Pone il processo in stato di sleep per il tempo specificato da \param{req}. + In caso di interruzione restituisce il tempo restante in \param{rem}. \bodydesc{La funzione restituisce zero se l'attesa viene completata, o -1 in - caso di errore, nel qual caso \var{errno} è settata a \macro{EINVAL} o - \macro{EINTR}.} + caso di errore, nel qual caso \var{errno} è settata a + \begin{errlist} + \item[\macro{EINVAL}] si è specificato un numero di secondi negativo o un + numero di nanosecondi maggiore di 999.999.999. + \item[\macro{EINTR}] la funzione è stata interrotta da un segnale. + \end{errlist}} \end{prototype} Lo standard richiede che la funzione sia implementata in maniera del tutto -indipendente da \func{alarm}\footnote{nel caso di Linux direttamente - attraverso il timer del kernel} e sia utilizzabile senza interferenze con -l'uso di \macro{SIGALRM}. - +indipendente da \func{alarm}\footnote{nel caso di Linux questo è fatto + utilizzando direttamente il timer del kernel.} e sia utilizzabile senza +interferenze con l'uso di \macro{SIGALRM}. La funzione prende come parametri +delle strutture di tipo \var{timespec}, la cui definizione è riportata in +\figref{fig:sig_timespec_def}, che permettono di specificare un tempo con una +precisione (teorica) fino al nanosecondo. \begin{figure}[!htb] \footnotesize \centering @@ -1323,9 +1330,10 @@ struct timespec \end{minipage} \normalsize \caption{La struttura \var{timespec} di \func{nanosleep}.} - \label{fig:sig_alarm_def} + \label{fig:sig_timespec_def} \end{figure} +La