进程与线程的区别和联系(面试高频)

本文介绍了进程和线程的概念,强调线程作为进程的轻量级执行单元,主要讨论了它们之间的区别和联系。线程在创建时不需要像进程那样多次开辟内存,且在执行和销毁时消耗资源较少。在同一进程中,线程共享内存资源,而进程间资源独立。当线程异常可能影响整个进程,但在JAVA中由于有隔离机制,这一情况不会发生。线程是调度执行的基本单位,用于执行和协作,同时使用进程中的资源。
摘要由CSDN通过智能技术生成

在前面我们介绍了进程,其实线程就是一个属于进程的一个任务分支

我们用一个图先简单介绍一些什么是线程

 操作系统的内核是通过PCB来描述进程的,更准确的说,一个进程需要一组PCB来描述,因为一个进程可以包含多个线程,每个线程由一个PCB描述

区别:

1.多个进程创建需要多次开辟内存资源  而  线程就不用,只是在第一个线程的时候开辟,并且在销毁的时候,线程也比进程的消耗要小得多,所以线程更加轻量化

2.进程是资源分配的基本单位,线程是调度执行的基本单位

3.同一个进程中的线程之间,是公用一块内存/文件资源的,而每个进程却是独立的

4.进程包含线程

联系:

1.当某个线程出现异常,可能会把整个进程带走(JAVA中不会出现这种情况,因为JVM中具有隔离机制)

2.线程在执行的时候,需要相互协作,不同进程中的线程要利用系统提供的公共资源区进行通信,线程也是进程的可调度实体

3.资源分给进程,线程可以使用进程中的资源

4.处理机分给线程,真正在执行的其实还是线程

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值