线程与进程之间的区别和联系

一.什么是线程和进程?

1.线程(Thread)

  线程是进程内的一个执行单元,也是CPU调度的最小单位,共享进程的内存和资源。

2.进程(Process)

  进程是计算机正在运行的程序的实例,是操作系统进行资源分配和调度的基本单位,拥有独立的内存空间和系统资源。


二.线程与进程之间的区别

1.概念

  进程是系统分配资源的最小单位,而线程是系统调度的最小单位。

2.资源占用

  因为每一个进程都有自己独立的内存空间,所以资源开销会大;而对于线程来说,同一个进程的线程可以共享资源,从而资源开销会小。

3.独立性

  进程之间相互独立,一个进程挂了一般不会影响其他进程,但是一个线程挂了,会影响同一个进程中的其他线程,导致整个进程崩溃。

4.创建与开销

  创建一个新的线程的代价要比创建一个新进程小得多,因为新进程的创建和销毁需要分配或者回收内存和文件,开销比较大,而新线程只需要分配少量资源,开销较小。

 5.通信方式

   进程间通信需要共享内存等复杂机制,而线程间可直接读写共享内存,通信简单高效。

6.并发性

  进程也可以并发性执行,但开销大,线程比进程更轻量,效率更高。

7.其他区别

  创建线程比创建进程更快,销毁线程比销毁进程更快,调度线程比调度进程更快。


 三.线程与进程之间的联系

1.从属关系

  核心联系是线程依赖进程而存在,线程不可能独立存在,线程是进程的一部分,一个进程至少含有一个线程,也就是主线程。

2.资源联系

  线程共享进程的代码、文件资源,进程资源独立。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值