文件名称:vc++多线程
介绍说明--下载内容均来自于网络,请自行研究使用
多线程编程
进程和线程都是操作系统的概念。进程是应用程序的执行实例,每个进程是由私有的虚拟地址空间、代码、数据和其它各种系统资源组成,进程在运行过程中创建的资源随着进程的终止而被销毁,所使用的系统资源在进程终止时被释放或关闭。
线程是进程内部的一个执行单元。系统创建好进程后,实际上就启动执行了该进程的主执行线程,主执行线程以函数地址形式,比如说main或WinMain函数,将程序的启动点提供给Windows系统。主执行线程终止了,进程也就随之终止。
每一个进程至少有一个主执行线程,它无需由用户去主动创建,是由系统自动创建的。用户根据需要在应用程序中创建其它线程,多个线程并发地运行于同一个进程中。一个进程中的所有线程都在该进程的虚拟地址空间中,共同使用这些虚拟地址空间、全局变量和系统资源,所以线程间的通讯非常方便,多线程技术的应用也较为广泛。
多线程可以实现并行处理,避免了某项任务长时间占用CPU时间。要说明的一点是,目前大多数的计算机都是单处理器(CPU)的,为了运行所有这些线程,操作系统为每个独立线程安排一些CPU时间,操作系统以轮换方式向线程提供时间片,这就给人一种假象,好象这些线程都在同时运行。由此可见,如果两个非常活跃的线程为了抢夺对CPU的控制权,在线程切换时会消耗很多的CPU资源,反而会降低系统的性能。这一点在多线程编程时应该注意。
Win32 SDK函数支持进行多线程的程序设计,并提供了操作系统原理中的各种同步、互斥和临界区等操作。Visual C++ 6.0中,使用MFC类库也实现了多线程的程序设计,使得多线程编程更加方便。
(系统自动生成,下载前可以参看下载内容)
下载文件列表
压缩包 : multitreadsrc1.rar 列表 MultiThread4\MultiThread4.cpp MultiThread4\MultiThread4.dsp MultiThread4\MultiThread4.dsw MultiThread4\MultiThread4.h MultiThread4\MultiThread4.rc MultiThread4\MultiThread4Dlg.cpp MultiThread4\MultiThread4Dlg.h MultiThread4\ReadMe.txt MultiThread4\res\MultiThread4.ico MultiThread4\res\MultiThread4.rc2 MultiThread4\resource.h MultiThread4\StdAfx.cpp MultiThread4\StdAfx.h SingleThread\ReadMe.txt SingleThread\res\SingleThread.ico SingleThread\res\SingleThread.rc2 SingleThread\resource.h SingleThread\SingleThread.cpp SingleThread\SingleThread.dsp SingleThread\SingleThread.dsw SingleThread\SingleThread.h SingleThread\SingleThread.rc SingleThread\SingleThreadDlg.cpp SingleThread\SingleThreadDlg.h SingleThread\StdAfx.cpp SingleThread\StdAfx.h MultiThread1\MultiThread1.cpp MultiThread1\MultiThread1.dsp MultiThread1\MultiThread1.dsw MultiThread1\MultiThread1.h MultiThread1\MultiThread1.rc MultiThread1\MultiThread1Dlg.cpp MultiThread1\MultiThread1Dlg.h MultiThread1\ReadMe.txt MultiThread1\res\MultiThread1.ico MultiThread1\res\MultiThread1.rc2 MultiThread1\resource.h MultiThread1\StdAfx.cpp MultiThread1\StdAfx.h MultiThread2\MultiThread2.cpp MultiThread2\MultiThread2.dsp MultiThread2\MultiThread2.dsw MultiThread2\MultiThread2.h MultiThread2\MultiThread2.rc MultiThread2\MultiThread2Dlg.cpp MultiThread2\MultiThread2Dlg.h MultiThread2\ReadMe.txt MultiThread2\res\MultiThread2.ico MultiThread2\res\MultiThread2.rc2 MultiThread2\resource.h MultiThread2\StdAfx.cpp MultiThread2\StdAfx.h MultiThread3\MultiThread3.cpp MultiThread3\MultiThread3.dsp MultiThread3\MultiThread3.dsw MultiThread3\MultiThread3.h MultiThread3\MultiThread3.rc MultiThread3\MultiThread3Dlg.cpp MultiThread3\MultiThread3Dlg.h MultiThread3\ReadMe.txt MultiThread3\res\MultiThread3.ico MultiThread3\res\MultiThread3.rc2 MultiThread3\Resource.h MultiThread3\StdAfx.cpp MultiThread3\StdAfx.h MultiThread4\res SingleThread\res MultiThread1\res MultiThread2\res MultiThread3\res MultiThread4 SingleThread MultiThread1 MultiThread2 MultiThread3