标签:get clu linu color span domain 添加文件 rgb 版本
flags = fcntl(fd,F_GETFL,0);
fcntl(fd,F_SETFL,flags);
flags = fcntl(fd,F_GETFL,0); flags |= O_NONBLOCK; fcntl(fd,F_SETFL,flags);
或者一步到位的方式:
fcntl(socket,F_SETFL,fcntl(socket,F_GETFL)|O_NONBLOCK);
flags = fcntl(fd,F_GETFL,0); flags &= ~O_NONBLOCK; fcntl(fd,F_SETFL,flags);
</pre><pre name="code" class="cpp">#include<sys/types.h> #include<sys/socket.h> int socket(int domain,int type,int protocal);
Type 參数指定服务类型,服务类型主要有SOCK_STREAM服务,SOCK_DGREAM服务,值得指出的是,在Linux内核版本号2.6.17起,type參数能够接受上述服务的同一时候也能够接受以下的两个标志与之相与:SOCK_NONBLOCK,SOCK_CLOEXEC,它们分别表示将新创建sock 设为非堵塞的,以及在fork调用创建子进程时在子进程中关闭socket.可是之前的版本号并不支持。
int fd_sock = socket(AF_INET,SOCK_STREAM,0);
int fd_sock = socket(AF_INET,SOCK_STREAM|SOCK_NONBLOCK,0);
上述代码表示创建的一个新的socket为非堵塞式
标签:get clu linu color span domain 添加文件 rgb 版本
原文地址:http://www.cnblogs.com/yangykaifa/p/7040111.html