Query: io_tryread
OS: debian
Section: 3
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
io_tryread(3) Library Functions Manual io_tryread(3)NAMEio_tryread - read from a descriptor without blockingSYNTAX#include <io.h> int io_tryread(int64 fd,char* buf,int64 len);DESCRIPTIONio_tryread tries to read len bytes of data from descriptor fd into buf[0], buf[1], ..., buf[len-1]. (The effects are undefined if len is 0 or smaller.) There are several possible results: o o_tryread returns an integer between 1 and len: This number of bytes was available for immediate reading; the bytes were read into the beginning of buf. Note that this number can be, and often is, smaller than len; you must not assume that io_tryread always succeeds in reading exactly len bytes. o io_tryread returns 0: No bytes were read, because the descriptor is at end of file. For example, this descriptor has reached the end of a disk file, or is reading an empty pipe that has been closed by all writers. o io_tryread returns -1, setting errno to EAGAIN: No bytes were read, because the descriptor is not ready. For example, the descriptor is reading an empty pipe that could still be written to. o io_tryread returns -3, setting errno to something other than EAGAIN: No bytes were read, because the read attempt encountered a persis- tent error, such as a serious disk failure (EIO), an unreachable network (ENETUNREACH), or an invalid descriptor number (EBADF). io_tryread does not pause waiting for a descriptor that is not ready. If you want to pause, use io_waitread or io_wait. You can make io_tryread faster and more efficient by making the socket non-blocking with io_nonblock().SEE ALSOio_nonblock(3), io_waitread(3), io_tryreadtimeout(3) io_tryread(3)
Related Man Pages |
---|
sendfile(2) - mojave |
sendfile(2) - osx |
io_nonblock(3) - debian |
read(2) - ultrix |
readv(2) - ultrix |
Similar Topics in the Unix Linux Community |
---|
problem in reading file using fread |
while read |
reading an already complied excutable file |
How to use we use int64? |
Extract sequences of bytes from binary for differents blocks |