Windows异步IO(Asynchronous IO) (一)

题记:最近在学习Windows SDK编程,打算在这里贴出自己的学习总结和心得与大家交流,主要参考资料来自<Windows via C/C++ 5th>和<Programming Windows>。我尽量用英文术语来表达技术概念,方便大家查找其它资料。第一篇从异步IO(Asynchronous IO)说起,以文件IO作为代表。

 

    异步IO是现代操作系统必不可少的特性,它让宝贵的CPU计算资源不会浪费在等待慢速IO上。它的行为方式很直观,用户线程在发送IO请求(Issue IO Request)后不用一直挂起,直到IO完成,而是直接返回继续执行其它任务。在设备驱动(Device Driver)完成IO请求后,会通知用户线程数据传输已完成,可以进行相关操作。Windows异步IO的过程主要有两步:1)向设备驱动发送IO请求,2)设备驱动在完成IO请求后通知用户已完成数据传输,即完成通知(Completion Notification)。这一篇主要介绍第一步:发送IO请求。

 

    Windows SDK中关于文件异步IO的操作,主要涉及这样几个基本函数CreateFile,ReadFile,WriteFile。

    1,  

<
  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值