Python中进程,线程和协程的区别

进程是 计算机资源分配的最小单元

线程是 工作执行的最小单元

一个进程可以有多个线程,多个线程可以共享程序中所有资源

协程 在计算机中协程是不存在的,是由程序员人为创造的,控制代码在函数中执行的速度,本身无法完成并发的操作,但如果和IO切换结合就可以实现并发了

协程:greenlet

协程+IO切换:gevent

GIL锁

一个进程中,同一时刻,只有一个线程可以被CPU调用

1 GIL锁 一个进程,同一时刻只有一个线程被CPU调度

遇到IO操作

协程+IO切换> 线程 > 进程

扫描二维码关注公众号,回复: 3251795 查看本文章

线程池和进程池   有节制  有限制

IO多路复用

检测IO对象(常用socket对象)状态(是否发生变化)

select(轮训,最多监听1024个) 

poll(轮训  监听个数不限制)

epoll (回调)

猜你喜欢

转载自www.cnblogs.com/mayite/p/9668245.html