X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=socket.tex;h=6125406d574b65272abdf29cbdd12c281db8d893;hp=e0057fd3bd8fc20126605cec1b49035e4ac20713;hb=c6bb1ae340cad082718e43163b9595608ed123e1;hpb=429f6e0da8fc282eb6611b6fe83fdf58ae8da611 diff --git a/socket.tex b/socket.tex index e0057fd..6125406 100644 --- a/socket.tex +++ b/socket.tex @@ -804,11 +804,11 @@ ssize_t SockWrite(int fd, const void *buf, size_t count) \label{fig:sock_SockWrite_code} \end{figure} -Come si può notare le funzioni ripetono la lettura/scrittura in un loop fino +Come si può notare le funzioni ripetono la lettura/scrittura in un ciclo fino all'esaurimento del numero di bytes richiesti, in caso di errore viene controllato se questo è \texttt{EINTR} (cioè un'interruzione della system call dovuta ad un segnale), nel qual caso l'accesso viene ripetuto, altrimenti -l'errore viene ritornato interrompendo il loop. +l'errore viene ritornato interrompendo il ciclo. Nel caso della lettura se il numero di bytes letti è zero significa che è arrivati alla fine del file e pertanto si ritorna senza aver concluso la @@ -830,7 +830,7 @@ In \nfig\ elementare per il servizio \textit{daytime}, un servizio standard che restituisce l'ora locale della macchina a cui si effettua la richiesta. -\begin{figure}[!htbp] +\begin{figure}[!htb] \footnotesize \begin{lstlisting}{} #include /* predefined types */ @@ -929,7 +929,7 @@ Dato il funzionamento di TCP la risposta potr di 26 byte (come avverrà senz'altro nel caso in questione) ma potrebbe anche arrivare in 26 pacchetti di un byte. Per questo nel caso generale non si può mai assumere che tutti i dati arrivino con una singola lettura, pertanto -quest'ultima deve essere effettuata in un loop in cui si continui a leggere +quest'ultima deve essere effettuata in un ciclo in cui si continui a leggere fintanto che la funzione \func{read} non ritorni uno zero (che significa che l'altro capo ha chiuso la connessione) o un numero minore di zero (che significa un errore nella connessione). @@ -1049,7 +1049,7 @@ che viene chiamato \textit{connected descriptor} che dalla successiva chiamata alla \func{write} per scrivere la risposta al client, una volta che si è opportunamente (\texttt{\small 48--49}) costruita la stringa con la data da trasmettere. Completata la trasmissione il nuovo -socket viene chiuso (\texttt{\small 54}). Il tutto è inserito in un loop +socket viene chiuso (\texttt{\small 54}). Il tutto è inserito in un ciclo infinito (\texttt{\small 42--55}) in modo da poter ripetere l'invio della data ad una successiva connessione.