进程、线程和协程使用场景
1 伪多线程
1.1 GIL
python的cpython解释器由于有GIL(全局解释锁),CPU 同一时刻同一进程中只有一个线程被执行。
详细GIL参考:https://www.cnblogs.com/linhaifeng/articles/7449853.html
但是,进程没有GIL,也就是说同一个时刻一个核心执行一个进程,多个核心可以执行多个进程。
2 任务分类
2.1 计算密集型
指任务需要大量的使用CPU计算,少量 IO 操作。
2.2 IO密集型
指任务需要大量的进行IO操作,少量的使用CPU计算。
3 结论
可以放弃线程。
对于计算密集型,可以根据CPU的核心数开启相应的进程数量。
对于IO密集型,可以根据CPU的核心数开启相应的进程数量,然在每个进程内开启多个协程任务。

浙公网安备 33010602011771号