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

线程的基础知识

进程和线程的区别?
从实例去引入我们的进程和线程的概念,说出进程和线程的关系,引出线程,说出两者的内存分配占用,上下文切换的区别
当操作系统把我们磁盘中的程序加载到我们的内存当中,为其分配内存空间,就产生了一个进程,进程可以说是操作系统进行资源分配和管理的基本单位,因为每个进程都有独立的内存空间,所以上下文切换开销较大,而线程可以认为是轻量级别的进程,存在于进程中,与多个线程共享进程内存空间,其中存放的是我们的指令流,上下文切换相较于进程开销更小,只需要切换栈和寄存器等少量信息,线程可以说是操作系统进行任务调度和任务执行的单元

并行和并发有什么区别?
并行就是同一时间,多个任务被同时执行,通常需要多核cpu来实现,每个cpu核心可以独立执行一个或者多个线程。就像我们以边听歌以便写代码
并发就是一段时间内多个任务交替执行,单核cpu也通过时间片轮转机制来实现在不同任务之间切换,在宏观上看着好像他们在同时执行,但是微观上实际上只有一个任务真正占用了cpu资源

http://www.lqws.cn/news/153289.html

相关文章:

  • 基于eclipse进行Birt报表开发
  • MySQL间隙锁入手,拿下间隙锁面试与实操
  • python变量
  • Java-IO流之转换流详解
  • 基于51单片机的温控电机系统
  • Liunx进程替换
  • 面试心得 --- 车载诊断测试常见的一些面试问题
  • RAID磁盘阵列
  • 记一次spark在docker本地启动报错
  • 多模态大语言模型arxiv论文略读(109)
  • 「Java EE开发指南」如何使用MyEclipse在Web项目中用Web Fragments?
  • Python爬虫与Java爬虫深度对比:从原理到实战案例解析
  • thinkphp8.1 调用巨量广告API接口,刷新token
  • 二叉树-104.二叉树的最大深度-力扣(LeetCode)
  • 深入解析与解决方案:处理Elasticsearch中all found copies are either stale or corrupt未分配分片问题
  • RunnablePassthrough介绍和透传参数实战
  • Python训练营---Day45
  • 泊松融合的介绍和OpenCV教程
  • Android7 Input(十)View 处理Input事件pipeline
  • 视频汇聚平台EasyCVR“明厨亮灶”方案筑牢旅游景区餐饮安全品质防线
  • ubuntu屏幕复制
  • 人工智能--大型语言模型的存储
  • Spring框架学习day7--SpringWeb学习(概念与搭建配置)
  • 从零到一:Maven 快速入门教程
  • 虚实共生时代的情感重构:AI 恋爱陪伴的崛起、困局与明日图景
  • 回文数 - 力扣
  • 【Qt】之【Get√】【Bug】通过值捕获(或 const 引用捕获)传进 lambda,会默认复制成 const
  • 4G 模块工作原理及应用场景
  • scDown:单细胞RNA测序下游分析管道-文献精读140
  • 129、QT搭建FFmpeg环境