免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5001 | 回复: 4
打印 上一主题 下一主题

请教关于close()阻塞的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-13 23:00 |只看该作者 |倒序浏览
看别人的程序
open(name, O_RDWR | O_NONBLOCK);
这个是open函数,现在程序阻塞在close处,请问
close为什么会阻塞?
我在close(fd)前面加了句fcntl(disk->d_fd,F_SETFL,O_RDWR|O_NONBLOCK)
可是还是阻塞的,为什么?

论坛徽章:
0
2 [报告]
发表于 2009-12-14 08:47 |只看该作者

回复 #1 qwert3399 的帖子

我没遇到过close()阻塞的问题。我也很想知道.
确保你的close(fd),fd要传的没错。

论坛徽章:
0
3 [报告]
发表于 2009-12-14 11:46 |只看该作者
原帖由 feiyinziiu 于 2009-12-14 08:47 发表
我没遇到过close()阻塞的问题。我也很想知道.
确保你的close(fd),fd要传的没错。

我确定fd没错
对了,打开的是一个设备
我在此之前从来不知道close也可以阻塞

论坛徽章:
0
4 [报告]
发表于 2009-12-14 14:14 |只看该作者

回复 #3 qwert3399 的帖子

你可以试试close(fd)之后,看看进程的运行情况

论坛徽章:
0
5 [报告]
发表于 2009-12-15 13:13 |只看该作者
LZ是不是也在进行串口通信啊?你确定是close阻塞吗?有没有可能是你读串口数据的时候参数设置的不对,在等待啊?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP