免费注册 查看新帖 |

Chinaunix

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

read 阻塞住了,如何退出read [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-12-23 19:35 |只看该作者 |倒序浏览
不能用非阻塞打开设备文件。现在想要read在1秒内读不到数据,就返回,如何做呀?

请各位提示提示。。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2006-12-23 20:07 |只看该作者
用select..

论坛徽章:
0
3 [报告]
发表于 2006-12-23 20:34 |只看该作者
select / poll
APUE 上有完整的示例程序

论坛徽章:
0
4 [报告]
发表于 2006-12-23 21:16 |只看该作者
select可以用在设备文件上吧

比如声音设备/dev/dsp

select本身不会很耗资源吧?

论坛徽章:
0
5 [报告]
发表于 2006-12-23 23:28 |只看该作者
原帖由 haoyue 于 2006-12-23 21:16 发表
select可以用在设备文件上吧

比如声音设备/dev/dsp

select本身不会很耗资源吧?


可以

不会很耗资源,你可以自己试一下。

论坛徽章:
0
6 [报告]
发表于 2006-12-23 23:44 |只看该作者
补充, select 用在文件描述符上 ,文件描述符可以描述的类型, select 就可以用

论坛徽章:
0
7 [报告]
发表于 2006-12-24 08:35 |只看该作者
用软件中断最合适。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
8 [报告]
发表于 2006-12-24 16:09 |只看该作者
原帖由 haoyue 于 2006-12-23 21:16 发表
select可以用在设备文件上吧

比如声音设备/dev/dsp

select本身不会很耗资源吧?


要看该设备有没有实现select的内核方法.

论坛徽章:
0
9 [报告]
发表于 2006-12-25 09:55 |只看该作者
请问如何查看该设备有没有实现select的内核方法?

不是可以用文件描述符来描述的,都可以用select吗?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
10 [报告]
发表于 2006-12-25 10:29 |只看该作者
原帖由 haoyue 于 2006-12-25 09:55 发表
请问如何查看该设备有没有实现select的内核方法?

不是可以用文件描述符来描述的,都可以用select吗?


看这个设备的内核实现的代码.实现了select方法没有.

并不是说所有的文件描述符都可以用select方法的,前提是设备实现了该方法.具体的可以参考LDD3.

也可以去找你要实现的设备的驱动,看看是否实现了该方法.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP