io_fd_canwrite(3) 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.


io_fd_canwrite returns 1 on success, 0 on error.