线程的基本概念和与进程的区别联系

线程是执行流,是操作系统调度的基本单位,比进程轻量级,创建和销毁更快。进程包含线程,拥有独立内存空间,而线程共享进程资源。并发编程用于充分利用多核CPU资源,降低IO等待时间。进程间独立,线程间可影响整个进程稳定性。
摘要由CSDN通过智能技术生成


在这里插入图片描述

什么是线程?

进程是工厂,线程是工厂里的流水线,一个线程就是一个 “执行流”. 每个线程之间都可以按照顺讯执行自己的代码. 多个线程之间 “同时” 执行着多份代码

为啥要有线程?

(1)并发编程

单核 CPU 的发展遇到了瓶颈. 要想提高算力, 就需要多核 CPU. 而并发编程能更充分利用多核 CPU
资源.
有些任务场景需要 “等待 IO”, 为了让等待 IO 的时间能够去做一些其他的工作, 也需要用到并发编程

(2)线程比进程轻量

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

引入进程的目的

是为了能够实现多个任务 并发执行的效果。
但进程有个缺陷:如果频繁的创建/销毁进程,成本比较高。

只有在进程启动,创建第一个线程的时候,需要花成本去申请系统资源。
一旦进程(第一个线程)创建完毕后,在创建其他的线程,就不必再去申请系统资源了,所以 创建/销毁 的效率就提高了

进程和线程区别

1.进程包含线程
2.进程有自己独立的内存空间和文件描述符表。
3.一个进程里有着一个或多个线程,它们之间共用一份系统资源。
4.线程 是操作系统 调度运行 的基本单位
进程 是操作系统 资源分配 的基本单位
5.进程之间具有独立性,一个进程的崩溃不会影响到其他进程。
6.同一进程的多个线程之间,一个线程崩溃会影响到整个进程,进而影响到其他线程
7.每个线程都是一个独立的执行流,也是并发执行的
8.操作系统真正调度的是在调度线程而不是进程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值