不要笑话我,我能知道一点,但一直没有很精确的定义它,哪为大虾用通俗易懂的话告诉我一下,谢谢.
还有线程和进程?
还有线程和进程?
解决方案 »
- 高手帮忙,在sdk对话框中显示一幅位图
- ado连接access数据库后怎么将数据库中的所有表名添加listbox中
- 格式化磁盘的方法
- 如何知道文件正在被传输 ,并且传输完成后将整个文件删除
- VC6写的软件在英文系统无法打开
- 请问TextOut()输出字符串中怎样实现字符串回车?
- 数据转换输出
- fork in windows
- 怎么动态确定ado的地址
- MFC工程中使用pthread Win32版本有内存泄露
- 实现像屏保那样鼠标一移动,程序就结束。但我在主窗口过程中捕捉WM_MOUSEMOVE,然后发送WM_CLOSE.但为什么程序一运行(我还没移动鼠标)就
- 一个简单的dcom组件,计算两数和,客户和服务器在同一台机器上时,结果正确;将服务器放到另一台机器上后,总是返回0值,请各位大侠帮忙
在Windows的一个进程内,包含一个或多个线程,线程是指进程的一条执行路径,它包含独立的堆栈和CPU寄存器状态,每个线程共享所有的进程资源,包括打开的文件、信号标识及动态分配的内存等等。一个进程内的所有线程使用同一个32位地址空间,而这些线程的执行由系统调度程序控制,调度程序决定那个线程可执行和什么时候执行线程,线程有优先级别,优先权较低的线程必须等到优先权较高的线程执行完任务后再执行。在多处理器的机器上,调度程序可以把多个线程放到不同的处理器上运行,这样可以使处理器的任务平衡,也提高系统的运行效率。
32位Windows环境下的Win32 API提供了多线程应用开发所需要的接口函数,但Win16和Win32s对多线程应用并不支持,利用Visual C++ 5.0中提供的标准C库也可以开发多线程应用程序,而相应的MFC4.21类库则封装了多线程编程的类,因而用户在开发时可根据应用的需要和特点选择相应的工具。
如果用户的应用需要有多个任务同时进行相应的处理,那么使用多线程是很理想的选择,如网络文件服务功能的应用,若采用单线程编程方法,需要循环检查网络的连接、磁盘驱动器的状况,并在适当的时候显示这些数据,必须等到一遍查询后才能刷新数据的显示,对使用者来说,延迟可能很长;而一个多线程的应用可以把这些任务分给多个线程,一个线程可检查网络,另一个线程管理磁盘驱动器,还有一个线程负责显示数据,三个线程结合起来共同完成文件服务的功能,使用者也可以及时看到网络的变化。多线程应用范围很广,尤其现在的桌面平台上,系统的许多功能如网络(Internet)、打印、字处理、图形图象、动画和文件管理都在一个系统下运行,更需要我们的应用能同时处理多个事件,而这些正是多线程所可以实现的。
(前台) ( 后 台 )