第三讲:线程通信
很多的时候一件事情需要很多人完成,那么此时这些人就避免不了需要相互进行交流,在程序中利用多线程进行工作的时候同样也是这个道理,为了能够使得线程之间能够更好的协调的完成任务,这些线程也需要进行交流。称之为线程通信。
【线程通信的方法】
线程通信有很多的方法,在MFC平台中普遍采用的方法是使用全局变量和使用自定义消息两种方案。
使用全局变量:
使用全局变量实现线程间通信是最简单的线程间的通信方式。核心做法是在程序中定义全局变量,各个线程都可以直接访问此全局变量的值,从而达到线程间通信的目的。在实际的编程中,通常用在下面的两种情况:
使用全局变量控制线程的工作状态
通过全局变量实现多个线程操作一个对象
使用自定义消息:
除了使用全局变量进行通信外还可以通过使用自定义消息的方式完成线程间的通信。通常情况下,此种方式用在线程将数据传递给进程的情况。
【使用全局变量】
使用全局变量通信即使得多个线程访问同一个全局变量以完成线程间的数据交换。在《操作系统》学科中通常将这种方法称之为“共享内存”方法,即多个线程共享一个内存空间,通过访问同一个内存空间完成线程通信。如下图:
上图中线程A将需要发给线程B的消息放在全局变量所占用的内存区域中,线程B通过访问内存块获取线程A发送的消息。
【最简单的消息】
最简单的消息通信莫过于上述所描述的单
您可能关注的文档
- 第七章生产费用在完工产品与在产品之间分配的核算分解.ppt
- 第七章统计指数分析分解.ppt
- 第七章图画书分解.ppt
- 第七章土压力分解.ppt
- 第七章文件管理分解.ppt
- 第七章现金流量表分析分解.ppt
- 第七章信用制度与虚拟资本分解.ppt
- 第七章影响中尺度运动的物理条件分解.ppt
- 第七章作业分解.doc
- 第三部分:古代诗文阅读分解.doc
- 2026西安交通大学附属中学榆林学校招聘备考题库及答案详解【易错题】.docx
- 2026西安交通大学附属中学榆林学校招聘备考题库及答案详解【全国通用】.docx
- 2026西安交通大学附属中学榆林学校招聘备考题库及答案详解【各地真题】.docx
- 高三生物期末模拟考试B.docx
- 2026西安交通大学附属中学榆林学校招聘备考题库及完整答案详解.docx
- 北师大版八年级物理期中试题:声速与光速计算题.docx
- 初一数学期末复习评估B.docx
- 建筑文明施工秩序的重建.pptx
- 最新高中政治期末创新号探索卷.docx
- 2026西安交通大学附属中学榆林学校招聘备考题库及参考答案详解(能力提升).docx
最近下载
- 世界地理 超星尔雅学习通满分答案章节测验.doc VIP
- 2026北京中考语文精细复习资料(考纲导向·备考大全).pdf
- 二界沟渔港工程梁板式高桩码头结构毕业设计.doc VIP
- 高桩码头毕业设计浙江省苍南巴艚中心渔港工程样本.pdf VIP
- 2025年燃气管道项目可行性研究报告.docx VIP
- 22CJ110-1 防火玻璃及其门窗幕墙系统建筑构造——恒保防火玻璃系统产品 参考图集.docx
- 2025年神经外科简答试题及答案.docx
- wefp升级电气火灾监控系统说明书wefps主机.pdf VIP
- 10.1相交线对顶角及其性质第1课时课件 沪科版(2024)数学 七年级下册.pptx VIP
- 新版《建设工程监理规范》(GB50319-2022)基本表式总表.pdf VIP
原创力文档

文档评论(0)