Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
io_canwrite(3)		   Library Functions Manual		io_canwrite(3)

NAME
       io_canwrite - return a file descriptor that can be written to

SYNTAX
       #include	<libowfat/io.h>

       int64 io_canwrite();

DESCRIPTION
       io_canwrite  returns  the  next file descriptor that can	be written to.
       You have	to have	used io_wantwrite() on the  file  descriptor  earlier,
       and you have to have called io_wait() or	io_waituntil().

       These  functions	then keep an internal data structure on	which descrip-
       tors were reported writable by the operating system.

       Please note that	there is no guarantee that you can  still  write  data
       without blocking	to that	descriptor, just that you could	when io_wait()
       or  io_waituntil()  were	 called.   Another  process could have written
       something before	you.  Look at the result from io_trywrite().

       If there	are no more descriptors	that you can write to  without	block-
       ing,  io_canwrite  will	return	-1.   In  this	case  you  should call
       io_wait() or io_waituntil() again.

       You should only use io_trywrite(3), io_sendfile(3)  or  iob_send(3)  to
       write to	the file, not plain write(2).  If you use write(2) and get EA-
       GAIN, call io_eagain(3).

SEE ALSO
       io_wait(3), io_canwrite(3)

								io_canwrite(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=libowfat_io_canwrite&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help