博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[uart]linux串口的阻塞非阻塞切换
阅读量:6882 次
发布时间:2019-06-27

本文共 380 字,大约阅读时间需要 1 分钟。

比如写的时候设置为阻塞,读的时候设置为非阻塞,就需要下面的切换方式

1、获取文件的flags,即open函数的第二个参数:

       flags = fcntl(fd,F_GETFL,0);

2、设置文件的flags:

      fcntl(fd,F_SETFL,flags);

3、增加文件的某个flags,比如文件是阻塞的,想设置成非阻塞:

       flags = fcntl(fd,F_GETFL,0);

       flags |= O_NONBLOCK;

      fcntl(fd,F_SETFL,flags);

4、取消文件的某个flags,比如文件是非阻塞的,想设置成为阻塞:

      flags = fcntl(fd,F_GETFL,0);

      flags &= ~O_NONBLOCK;

      fcntl(fd,F_SETFL,flags);

如果fcntl(fd, F_SETFL, 0); 设置为阻塞状态

转载地址:http://hdnbl.baihongyu.com/

你可能感兴趣的文章
Spot 安装和使用
查看>>
第1件事 产品经理工作的8个核心步骤
查看>>
Http协议的post和get提交方式。
查看>>
JSP、Java和Servlet获取当前工程的路径
查看>>
数据归一化
查看>>
秘诀!支付宝支撑双十一4200万次/秒的数据库请求峰值的技术实现
查看>>
Matlab----获取一个文件夹下所有文件名
查看>>
jmeter报错
查看>>
bzoj4035【HAOI2015】数组游戏
查看>>
wchar_t与char转换、wstring与string转换
查看>>
git 命令
查看>>
Linux 查询服务数据
查看>>
【Luogu 2014】选课
查看>>
CSS 的介绍
查看>>
Latex自定义文档纸张大小
查看>>
2018QBXT刷题游记(23)
查看>>
函数递归
查看>>
android框架Java API接口总注释/**@hide*/和internal API
查看>>
20175318 2018-2019-2 《Java程序设计》第七周学习总结
查看>>
比特币:一种点对点的电子现金系统
查看>>