非阻塞I/O
它使我们可以调用open,read和write这样的I/O操作,并使这些操作不会永远阻塞。如果这种操作不能完成,则调用立即出错返回,表示该操作如继续执行将阻塞。
指定非阻塞I/O:
1.如果调用open获得描述符,则可指定O_NONBLOCK标志
2.对于已经打开的一个描述符,可调用fcntl,由该函数打开O_NONBLOCK文件状态标志。
fcntl记录锁
int fcntl(int filedes,int cmd, ...)
cmd是F_GETLK,F_SETLK,F_SETLKW