进程和线程以及协程

1.基本概念

进程和线程

进程:是系统资源分配的基本单位,实现了操作系统的并发。

线程:是CPU调度的基本单位,实现了进程内的并发执行。

并发是把任务在不同的时间点交给处理器进行处理;在同一时间点,任务并不会同时运行。

并行是把每一个任务分配给每一个处理器独立完成;在同一时间点,任务一定是同时运行。 

进程拥有自己独立的堆和栈,既不共享堆,亦不共享栈,进程由操作系统调度;

线程拥有自己独立的栈,共享堆(也可以有自己的私有域),不共享栈,线程亦由操作系统调度。


协程

协程:协程(Coroutine,又称微线程)是一种比线程更加轻量级的存在(C++ 20之后引入),协程不是被操作系统内核所管理,而完全是由程序所控制。

协程不是进程,也不是线程,它就是一个函数,一个特殊的函数——可以在某个地方挂起,并且可以重新在挂起处继续运行。

协程可以让我们使用同步方式写异步代码。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值