问题:多核没有利用上
GIL:全局解释锁
因为有GIL ,所以同一时刻,只有一个线程被CPU执行
任务:IO密集型,计算密集型
对于IO密集型的任务:python的多线程的是有意义的
可以采用多进程+协程
对于计算密集型的任务:python的多线程就不推荐,python就不适用.
协程: 协作式,--------非抢占式的程序
A----B-----A----C
yield(协程)
用户态的切换
key: 什么时候切换
协程主要解决的也是IO操作
协程:本质上就是一个线程
协程的优势:
1.没有切换的消耗
2.没有锁的概念
有一个明显的问题,能用多核吗? -----> 可以采用多线程+协程,一个很好的解决并发的方案