孙鑫视频笔记——多线程与聊天室
来源:互联网 发布:js 变量给数组赋值 编辑:程序博客网 时间:2024/05/17 00:13
概念
进程由两部分组成:
(1)内核对象。内核对象被操作系统用来管理进程,内核对象也是系统用来存放关于进程的统计信息的地方。我们编写的应用程序是根本无法找到内核对象这个只用于系统的数据结构的,只能通过系统提供的一些函数来操作内核对象这种数据结构。
(2)地址空间。它包括所有可执行模块或Dll模块的代码和数据。它还包含动态内存分配的空间。如线程堆栈和堆分配空间。
线程也由两部分组成:
(1)线程的内核对象。操作系统用它来对线程实施管理。内核对象也是系统用来存放线程统计信息的地方。
(2)线程堆栈。它用于维护线程在执行代码时需要的所有参数和局部变量。
关于进程和线程的关系:
进程是不活泼的。进程从来不执行任何东西,它只是线程的容器。若要使进程完成某些操作,它必须拥有一个在它的环境中运行的线程,此线程负责执行包含在进程的地址空间中的代码。【即进程从来不执行代码,而线程负责执行代码,进程只是线程的一个容器而已。】
关于线程,必须记住:
线程总是在某个进程环境中创建。系统从进程的地址空间中分配内存,供线程的堆栈使用。新线程运行的进程环境与创建线程的某个实体的环境相同。因此新线程可以访问进程中的内核对象的所有句柄、进程中的所有内存和在这个相同的进程中的所有其他线程的堆栈。这使得单个进程中的多个线程确实能够非常容易地互相通信。
线程只有一个内核对象和一个堆栈,保留的记录很少,因此所需要的内存也很少。
操作系统为每一个运行线程安排一定的cpu时间片,系统通过一种循环的方式为线程提供时间片。如果计算机拥有多个cpu,线程就能真正意义上同时运行了。
0 0
- 孙鑫视频笔记——多线程与聊天室
- 孙鑫VC++视频笔记(15)多线程与聊天室的创建
- 孙鑫VC++视频笔记(15)多线程与聊天室的创建
- 【黑马程序员】视频拓展——多线程聊天室客户端与客户端的交互
- 聊天室——多线程应用
- 孙鑫VC视频教程笔记之第十五课“多线程与聊天室”
- 孙鑫VC视频教程笔记之第十五课“多线程与聊天室”
- [MFC学习笔记]--lesson15多线程与聊天室程序的设计
- 孙鑫lesson15 多线程与聊天室
- 使用WebRTC搭建前端视频聊天室——入门篇
- 使用WebRTC搭建前端视频聊天室——信令篇
- 使用WebRTC搭建前端视频聊天室-02——信令篇
- 使用WebRTC搭建前端视频聊天室——入门篇
- 使用WebRTC搭建前端视频聊天室——入门篇
- 使用WebRTC搭建前端视频聊天室——入门篇
- 使用WebRTC搭建前端视频聊天室——信令篇
- 使用WebRTC搭建前端视频聊天室——入门篇
- 使用WebRTC搭建前端视频聊天室——信令篇
- 记录一个哥们的博客追去卓越的泡泡糖
- Mysql学习 bin-log学习
- 从零开始学android<EditText组件的使用.六.>
- Android中实现加载样式图片自定义
- 宏定义和常量定义的区别
- 孙鑫视频笔记——多线程与聊天室
- MAC作用
- 使用python读取指定目录下的源代码并将内容复制到同一新文件中
- 【Android UI设计与开发】第05期:引导界面(五)实现应用程序只启动一次引导界面
- 如何动态改变对话框中Static Text的内容?
- Linux常用命令
- python default arg 和 *args 不能同时用
- 《黑马程序员》折半查找法实现及测试练习
- ARM 浮点运算,软浮点,硬浮点