io_fd_canwrite man page

io_fd_canwrite — prepare descriptor for io_wait


#include <io.h>

int io_fd(int64 fd); int io_fd_canwrite(int64 fd);


io_fd_canwrite is just like io_fd, except that it assumes the descriptor is writable, which may save a syscall or two.  This assumption is true in most cases, because the kernel buffers writes.  Noteworthy cases in which you need to use io_fd instead of io_fd_canwrite are unconnected sockets, i.e. when you queued a non-blocking connect() and want to ask for writability to get notified when it went through.

It is OK to call this function on a descriptor that io_fd() has already been called on.

Return Value

io_fd_canwrite returns 1 on success, 0 on error.

See Also

io_wait(3), io_wantread(3), io_canread(3), io_eagain(3), io_nonblock(3), io_fd(3)

Referenced By