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

总结:进程和线程的联系和区别

前言:通过学习javaEE初阶中的多线程章节后加上我自己的理解,想来总结一下线程和进程的联系和区别.

一来是能更好地复习知识,二来是为了记录我的学习路程,相信未来的我回首不会忘记这段难忘的经历.

1.进程

先来谈谈进程:进程是操作系统中资源分配的基本单位.

1)进程的执行方式有两种:并行和并发,二者同时存在

2)进程的状态最关键的两个:就绪状态和阻塞状态.

    就绪状态:进程随时可调度到CPU上执行

   阻塞状态:进程暂时无法调度到CPU上执行

2.线程:

再谈线程:线程是操作系统调度执行的基本单位.

3.进程和线程的联系:

3.1线程也叫"轻量级进程"

  1. 进程是线程的容器:一个进程至少含 1 个主线程,可创建多个子线程。
  2. 共享资源:同一进程内的线程共享内存、文件句柄等资源,通信成本低。
  3. 协同工作:进程通过多线程实现内部并行(如浏览器用不同线程渲染和加载网络)。

4.进程和线程的区别:

  

维度进程线程
定义操作系统分配资源的基本单位进程内的执行单元,CPU 调度基本单位
资源分配独立地址空间、文件句柄等共享进程资源,仅独立栈和寄存器
切换开销高(涉及内存管理等大量资源)低(仅少量寄存器和栈数据)
独立性进程间隔离,崩溃不影响其他进程共享资源,线程崩溃可能导致进程崩溃
适用场景强隔离任务(如独立程序运行)同程序内协作任务(如多任务处理)

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

相关文章:

  • Innodb底层原理与Mysql日志机制深入刨析
  • JMeter-SSE响应数据自动化
  • 泛型(1)
  • esp8266 点灯科技远程控制继电器
  • MMA: Multi-Modal Adapter for Vision-Language Models论文解读
  • Java中Map集合的遍历方式详解
  • 使用 Cannonballs 进行实用导体粗糙度建模
  • Spring Boot 注解 @ConditionalOnMissingBean是什么
  • 国外常用支付流程简易说明(无代码)
  • (先发再改)测试流程标准文档
  • 亚马逊SP-API开发实战:商品数据获取与操作
  • 行为型:策略模式
  • 知识宇宙-学习篇:开源项目 README 文档该如何写?
  • YOLOv12增加map75指标
  • Avalanche 六期 Workshop 精华合集|Grant 机会、技术深度、项目实战一文回顾!
  • 【MySQL】第九弹——索引(下)
  • leetcode-295 Find Median from Data Stream
  • 【后端高阶面经:缓存篇】37、高并发系统缓存性能优化:从本地到分布式的全链路设计
  • 西门子 S1500 博途软件舞台威亚 3D 控制方案
  • 洛谷 P3374 【模板】树状数组 1(线段树解法)
  • 欣佰特科技| SIL2/PLd 认证 Inxpect毫米波安全雷达:3D 扫描 + 微小运动检测守护工业安全
  • 大模型量化原理
  • dify-api的.env配置文件
  • 【Linux】Linux 操作系统 - 18 , 重谈文件(二) ~ 文件描述符和重定向原理 , 手把手带你彻底理解 !!!
  • 第五十三节:综合项目实践-车牌识别系统
  • AI时代新词-AI伦理(AI Ethics)
  • 湖北理元理律师事务所债务优化服务中的“四维平衡“之道
  • Git Push 失败:HTTP 413 Request Entity Too Large
  • 第10章 网络与信息安全基础知识
  • GO语言学习(九)