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

FreeBSD Manual Pages

  
 
  

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

NAME
       io_canread - return a file descriptor that can be read from

SYNTAX
       #include	<io.h>

       int64 io_canread();

DESCRIPTION
       io_canread returns the next file	descriptor that	can be read from.  You
       have to have used io_wantread() 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 readable by the operating system.

       Please note that	there is no guarantee that there still	is  data  that
       can  be	read  from  the	 descriptor,  just  that  there	 was data when
       io_wait() or io_waituntil() were	called.	 Another  process  could  have
       read the	data before you.  Look at the result from io_tryread().

       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  use	 io_tryread(3)	to read	from the descriptor, not plain
       read(2).	 If you	use read(2) and	you get	EAGAIN,	call io_eagain(3).

SEE ALSO
       io_wait(3), io_canwrite(3), io_eagain(3)

								 io_canread(3)

NAME | SYNTAX | DESCRIPTION | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=libowfat_io_canread&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help