Windows是一个多任务操作系统。传统的Windows 3.x只能依靠应用程序之间的协同来实现协同式多任务,而Windows 95/NT实行的是抢先式多任务。
在Win 32(95/NT)中,每一个进程可以同时执行多个线程,这意味着一个程序可以同时完成多个任务。对于象通信程序这样既要进行耗时的工作,又要保持对用户输入响应的应用来说,使用多线程是最佳选择。当进程使用多个线程时,需要采取适当的措施来保持线程间的同步。
利用Win 32的重叠I/O操作和多线程特性,程序员可以编写出高效的通信程序。在这一讲的最后将通过一个简单的串行通信程序,向读者演示多线程和重叠I/O的编程技术。
多任务、进程和线程
线程的同步
串行通信与重叠I/O
一个通信演示程序
小结