io_timeout man page
io_timeout — set time limit on descriptor
void io_timeout(int64 fd,tai6464 deadline);
The io library keeps track of an optional “timeout” for each descriptor. The timeout is a specific moment in time, stored in a tai6464 variable.
io_timeout(d,t) sets the timeout for descriptor d to t.
io_timeout has no return value; it always succeeds. (Space to store the timeout was already allocated as part of the descriptor.) It has no effect if d is not the number of a descriptor.
Note that you have to call io_timeouted to be notified of timeouts, just like you are calling io_canread or io_canwrite for read and write notification.