win32多线程程序设计笔记(第六章上)
我们知道当程序调用I/O设备处理一些事情时,让主程序停下来干等I/O的完成是没有效率的。。对这个问题有下面几种解决方法:
方法一:使用另一个线程进行I/O。问题是在主线程中操控多个线程,如何设置同步机制、如何处理错误情况都是非常复杂麻烦的。
方法二:使用overlapped I/O(就是所谓的异步asynchronous I/O,第四章讲到了同步机制),你可以让这些I/O操作并行处理。
===================================================================
在对overlapped I/O的具体讨论之前,先介绍Win32中执行I/O的基本函数。
===================================================================
对于overlapped I/O的讨论,从简单的应用开始,然后再演变到最高级的应用:
激发的文件handles; 激发的Event对象; 异步过程调用(APCs); I/O completion ports一、激发的文件Handles
二、激发的Event对象
待续。。。