Window s 平台下的多线程编程 线程是进程的一条执行路径,它包含独立的堆栈和 CPU 寄存器状态,每个线程共享所 有的进程资源,包括打开的文件、信号标识及动态分配的内存等
一个进程内的所有线程使 用同一个地址空间,而这些线程的执行由系统调度程序控制,调度程序决定哪个线程可执行 以及什么时候执行线程
线程有优先级别, 优先权较低的线程必须等到优先权较高的线程执 行完后再执行
在多处理器的机器上,调度程序可将多个线程放到不同的处理器上去运行, 这样可使处理器任务平衡,并提高系统的运行效率
Window s 是一种多任务的操作系统,在 Window s 的一个进程内包含一个或多个线程
32 位 Window s 环境下的 Win32 API提供了多线程应用程序开发所需要的接口函数,而利用 VC中提供的标准C库也可以开发多线程应用程序, 相应的MFC类库封装了多线程编程的 类,用户在开发时可根据应用程序的需要和特点选择相应的工具
为了使大家能全面地了解 Window s 多线程编程技术,本文将重点介绍 Win32 API和 MFC 两种方式下如何编制多线程 程序
多线程编程在 Win32 方式下和 MFC 类库支持下的原理是一致的, 进程的主线程在任何 需要的时候都可以创建新的线程
当线程执行完后,自动终止线程; 当进程结束后,所有的 线程都终止
所有活动的线程共享进程的资源,因此,在编程时需要考虑在多个线程访问同 一资源时产生冲突的问题
当一个线程正在访问某进程对象,而另一个线程要改变该对象, 就可能会产生错误的结果,编程时要解决这个冲突
Win32 API下的多线程编程 Win32 API是 Window s 操作系统内核与应用程序之间的界面, 它将内核提供的功能进行 函数包装,应用程序通过调用相关函数而获得相应的系统功能
为了向应用程序提供多线程 功能,Win3