当前位置: 首页 > news >正文

Qt5.12实战之多线程编程概念

1.为什么要使用多线程?

      a. 基于线程,同时处理多个任务,软件响应更灵敏

      b.充分利用CPU的多核心功能增加应用运行效率

      c.多线程在同一进程间使用共享通信更加高效

      d.多个线程之间进行切换比多个进程之间进行切换,线程开销更少.

2.操作系统与进程关系

      a.  MS-DOS系统  属于单进程,单线程系统

      b. UNIX和Linux系统 属于 多进程,单线程系统

      c. Window NT系统到Win11 属于 多进程,多线程系统(支持多任务同步进行并切换)

      d. VxWorks属于 单进程 多线程系统

3.进程与线程有什么关系?

      a.进程由系统分配与调度,线程由进程创建与销毁,

      b.进程的内存地址空间是独立的, 同一进程内创建的所有线程共享进程的地址空间

      c. 同一进程内的线程切换比进程切换速度更快

4.什么情况下用线程?

      a. 耗时的任务

      b.实时应用

      c.独立的任务模块

5.线程有哪些状态?

        a.就绪

                       1.已创建,但未运行的线程

                        2.从阻塞状态恢复的线程

        b.运行

                        正在处理器中运行的线程,当前正在使用CPU的线程

         c.阻塞

                        等待运行条件的线程(IO操作/互斥锁/条件变量)

         d.终止

                          线程执行已执行完成,或者未完成被其他线程发信号取消,或者被非法终止的线程

                         (注: 已终止的线程所占用的资源暂未回收.且可重新激活)

6.什么是线程函数?

                创建线程时传入的函数,线程启动后会执行该函数,

                可以是用户自定义函数,也可是系统函数.

http://www.lryc.cn/news/62111.html

相关文章:

  • 格式化数据恢复怎么做?超实用的3种方法在这!
  • 【Java|golang】1105. 填充书架---动态规划
  • linux基础命令
  • 【三十天精通Vue 3】 第十八天 Vue 3的国际化详解
  • 02 - 学会提问
  • Java经典的Main方法面试题
  • 世界大学电子电气工程TOP10,国内大学哪家强?
  • 5.3 牛顿-科茨公式
  • 全注解下的SpringIoc 续2-bean的生命周期
  • 【VQ-VAE代码实战】Neural Discrete Representation Learning
  • gpt3.5和gpt4区别-gpt3.5和gpt4
  • java获取当前系统时间
  • pbootcms自动配图出图插件
  • 手动测试台架搭建,让你的车载测试更轻松
  • 分组双轴图:揭示数据中的关联性和趋势变化
  • MATLAB函数封装1:生成QT可以调用的.dll动态链接库
  • 【算法题】2400. 恰好移动 k 步到达某一位置的方法数目
  • 探索【Stable-Diffusion WEBUI】的插件:骨骼姿态(OpenPose)
  • MySQL数据落盘原理(redo、undo、binlog、2PC、double write等。)
  • 智加科技+舍弗勒,首发量产正向开发的智能重卡冗余转向
  • C++类的模拟实现
  • 耐腐蚀高速电动针阀在半导体硅片清洗机化学药液流量控制中的应用
  • 助力工业物联网,工业大数据之ODS层及DWD层建表语法【七】
  • Windows环境下C++ 安装OpenSSL库 源码编译及使用(VS2019)
  • TensorFlow高阶API和低阶API
  • 强训之【参数解析和跳石板】
  • Redis队列Stream、Redis多线程详解(三)
  • MySQL统计函数count详解
  • 实验04:图像压缩(DP算法)
  • 4.19--面试系列之真题版本--redis出现大key怎么解决?Redis 大 Key 对持久化有什么影响?