 | | In a nonthreaded program, system calls that perform file I/O (like open, read, and write) or synchronize processes (wait) block their callers until the requested operation completes. You can avoid some blocking on a file operation by passing the POSIX O_NONBLOCK flag or the BSD O_NDELAY flag to the file's open call, or the FIONBIO flag to an ioctl call to the file. When a process issues a subsequent read or write call on that file, it would receive notification of I/O completion through a SIGIO signal. | |
|