X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=fileadv.tex;h=6737554729c23493928bed51931c1a4a9c911af8;hp=b27f34e1df8b11bf3d80a6494c00869723103b10;hb=525464ecdd7e6cbdccc733e73b5f1cc9dbe6022a;hpb=d7305d300866c1e6909dd23743060632b3718178 diff --git a/fileadv.tex b/fileadv.tex index b27f34e..6737554 100644 --- a/fileadv.tex +++ b/fileadv.tex @@ -13,8 +13,8 @@ file mappati in memoria. Uno dei problemi che ci si trova ad affrontare con le funzioni ordinarie trattate in \capref{cha:file_unix_interface} è quello in cui si devono eseguire su più di un file descriptor delle operazioni che possono bloccarsi: -il problema è che mentre si è bloccati su un file un'altro potrebbe essere -libero. +il problema è che mentre si è bloccati su un file su di un'altro potrebbero +essere presenti dati da leggere. In questa sezione vedremo come si possono affrontare queste problematiche, quali sono le soluzioni possibili e quali i meccanismi il kernel e le librerie @@ -40,8 +40,7 @@ specificando il flag \macro{O\_NONBLOCK}. In questo caso le funzioni che si sarebbero bloccate ritornano immediatamente restituendo l'errore \macro{EAGAIN}. -Esistono molti casi però in cui non si vuole che questo avvenga - +L'utilizzo di questa modalità di I/O permette allora di risolvere il problema %\section{I/O asincrono}