io_wait man page

io_wait — wait for events

Syntax

#include <io.h>

void io_wait();

Description

io_wait() checks the descriptors that the program is interested in to see whether any of them are ready. If none of them are ready, io_wait() tries to pause until one of them is ready, so that it does not take time away from other programs running on the same computer.

io_wait pays attention to timeouts: if a descriptor reaches its timeout, and the program is interested in reading or writing that descriptor, io_wait will return promptly.

Under some circumstances, io_wait will return even though no interesting descriptors are ready. Do not assume that a descriptor is ready merely because io_wait has returned.

io_wait is not interrupted by the delivery of a signal. Programs that expect interruption are unreliable: they will block if the same signal is delivered a moment before io_wait. The correct way to handle signals is with the self-pipe trick.

See Also

io_waituntil(3), io_check(3), io_wantread(3), io_wantwrite(3), io_fd(3)

Referenced By

io_canread(3), io_canwrite(3), io_check(3), io_close(3), io_closeonexec(3), io_dontwantread(3), io_dontwantwrite(3), io_eagain(3), io_fd(3), io_fd_canwrite(3), io_finishandshutdown(3), io_getcookie(3), io_nonblock(3), io_sendfile(3), io_setcookie(3), io_timeouted(3), io_waituntil(3), io_wantread(3), io_wantwrite(3).