多线程编程基础与应用实例分析.pdfVIP

  • 1
  • 0
  • 约2.65万字
  • 约 40页
  • 2026-06-10 发布于北京
  • 举报

第五章线程编程

本章将分为两大部分进行讲解,前半部分将引出线程的使用场景及基本概念,通过示例

代码来说明一个线程创建到到回收的基本流程。后半部分则会通过示例代码来说明如果

控制好线程,从临界资源与线程的执行顺序控制上引出互斥锁、信号量的概念与使用方

法。

5.1线程的使用

5.1.1为什么要使用多线程

在编写代码时,是否会遇到以下的场景会感觉到难以下手?

场景一:写程序在拷贝文件时,需要一边去拷贝文件,一边去向用户展示拷贝文件的进

度时,传统做法是通过每次拷贝完成结束后去更新变量,再将变量转化为进度显示出来。其

中经历了拷贝-计算-显示-拷贝-计算-显示...直至拷贝结束。这样的程序架构及其的低效,

必须在单次拷贝结束后才可以刷新当前拷贝进度,若可以将进程分支,一支单独的解决拷贝

问题,一支单独的解决计算刷新问题,则程序效率会提升很多。

场景二:用阻塞方式去数据,实时需要发送数据的时候。例如在进行串口数据传输

或者网络数据传输的时候,我们往往需要双向通信,当设置数据为阻塞模式时候,传统

的单线程只能等到数据接收来临后才能冲过阻塞,再根据逻辑进行发送。当我们要实现随时

发送、随时接收时,我们的业务需求。若可

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档