当前位置: 技术问答>linux和unix
初级问题,socket(AF_INET, SOCK_STREAM, 0)是阻塞式还是非阻塞式?
来源: 互联网 发布时间:2015-11-15
本文导语: 我想在UNIX下编一个socket Server,希望recv的时候,如果没有数据就直接返回, TCP的Socket socket(AF_INET, SOCK_STREAM, 0)好像是阻塞的方式吧? 怎么设置为非阻塞的方式? 能给个例子吗? | fcntl (so...
我想在UNIX下编一个socket Server,希望recv的时候,如果没有数据就直接返回,
TCP的Socket socket(AF_INET, SOCK_STREAM, 0)好像是阻塞的方式吧?
怎么设置为非阻塞的方式?
能给个例子吗?
TCP的Socket socket(AF_INET, SOCK_STREAM, 0)好像是阻塞的方式吧?
怎么设置为非阻塞的方式?
能给个例子吗?
|
fcntl (socket_fd, F_SETFL, O_NONBLOCK)
|
int flags;
/*Set a socket as nonblocking*/
if( (flags = fcontl (fd ,F_GETFL,0))
/*Set a socket as nonblocking*/
if( (flags = fcontl (fd ,F_GETFL,0))