进程与线程的区别

Posted 李子捌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进程与线程的区别相关的知识,希望对你有一定的参考价值。

  • 备战2022春招或暑期实习,祝大家每天进步亿点点!Java并发编程Day1
  • 本篇总结的是 如何在Java中避免创建不必要的对象,后续会每日更新~
  • 关于《我们一起学Redis》、《我们一起学HarmonyOS》等知识点可以查看我的往期博客
  • 相信自己,越活越坚强,活着就该逢山开路,遇水架桥!生活,你给我压力,我还你奇迹!

目录

1、进程

2、线程

3、进程和线程二者关系

4、通信方式


1、进程

百度百科解释

进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。

进程
程序由指令和数据组成,指令运行在CPU中,数据读写需要使用到内存,此外还需要磁盘和网络等设备。进程就是用来加载指令、管理内存、管理IO资源的。进程可以被视为程序的一个实例,大部分程序可以同时运行多个实例进程(浏览器、IDEA等),部分程序只能启动一个实例进程(QQ、微信等)。

2、线程

百度百科解释

线程(英语:thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。在Unix System V及SunOS中也被称为轻量进程(lightweight processes),但轻量进程更多指内核线程(kernel thread),而把用户线程(user thread)称为线程。

线程
一个进程中有多个线程,进程可以看作线程的容器。一个线程就是一个指令流,将指令流中的一条条指令以一定的顺序交给CPU执行。

3、进程和线程二者关系

  1. 进程之间基本相互独立,线程存在进程中,是进程的一个子集
  2. 进程拥有的共享资源,如内存等,供其内的线程共享

4、通信方式

进程通信方式
进程的通信方式较为复杂,同一台计算机的进程通信称为IPC(Inter-process communication),不同计算机之间的进程通信,需要通过网络约定协议进行通信。

线程通信方式
线程通信方式比较简单,它们可以共享进程内的内存,因此可以访问相同内存进行通信。

👇🏻 关注公众号 获取更多资料👇🏻

以上是关于进程与线程的区别的主要内容,如果未能解决你的问题,请参考以下文章

进程与线程的区别

进程与线程的区别

进程与线程的区别,进程间通信方式,线程间通信方式

进程与线程对比/进程与线程的区别

Java多线程和并发,进程与线程的区别

进程与线程的区别