c语言 设置堵塞和非堵塞io的方法
来源:互联网 发布:mac写java web 编辑:程序博客网 时间:2024/06/10 22:55
66 void activate_nonblock(int fd)//设置非堵塞io,fd是io文件描述符 67 { 68 int ret; 69 int flags = fcntl(fd, F_GETFL);//F_GETFL获取标志位flag 70 if (flags == -1) 71 ERR_EXIT("fcntl"); 72 73 flags |= O_NONBLOCK; //为flag添加非堵塞属性 74 ret = fcntl(fd, F_SETFL, flags); //设置fd的标志位为新的flag 75 if (ret == -1) //返回值为 -1为异常 76 ERR_EXIT("fcntl"); 77 }
83 void deactivate_nonblock(int fd) //设置io为堵塞 84 { 85 int ret; 86 int flags = fcntl(fd, F_GETFL); 87 if (flags == -1) 88 ERR_EXIT("fcntl"); 89 90 flags &= ~O_NONBLOCK; //减去flag的非阻塞属性 91 ret = fcntl(fd, F_SETFL, flags); 92 if (ret == -1) 93 ERR_EXIT("fcntl"); 94 }
0 0
- c语言 设置堵塞和非堵塞io的方法
- 堵塞与非堵塞IO模式详解
- ProduceQueue;支持堵塞和非堵塞
- 非堵塞
- TCP非堵塞IO的connect连接处理模型
- 同步异步堵塞非堵塞
- 同步、异步、堵塞、非堵塞和函数调用及I/O之间的组合概念
- socket 堵塞非堵塞那些事
- 非堵塞IO的读与写的回射客户端对比分析
- 进程、线程、协程、异步、非堵塞IO,多路复用详解
- 打印头堵塞的原因及清洗方法
- VC中将SOCKET类的connect函数设置为非堵塞
- VC中将SOCKET类的connect函数设置为非堵塞
- 基于gevent和pymysql实现mysql读写的异步非堵塞方案
- 数码管动态扫描(非堵塞)
- SAP IDOC的堵塞
- 查看堵塞的SQL
- socket堵塞的解决方法
- 常耀俊老师经典《管理者的10项管理技能》课程
- 负载均衡
- js中数组的排序
- STL中的全排列next_permutation
- 常耀俊老师经典《优秀经理管人五要诀》课程
- c语言 设置堵塞和非堵塞io的方法
- ubuntu apache2 的负载均衡和反向代理
- Mac安装Homebrew
- 常耀俊老师经典《组织级项目管理》课程
- 如何查看局域网里面没有被占用的空闲IP
- sqlHelper
- JAVA中A a = new B()的方法调用问题
- Ubuntu下安装和配置Apache及Apache2
- Python-0(Intro)