并发:一个内核进行轮询处理多个进程和线程
并行:多个cpu同时处理多个进程和线程
GIL:全局解释器锁
python---->支持多线程------>同步互斥-------->加锁---------->超级锁-------->在同一时刻,解释器只能解释一个线程------->大量python库为了省事沿用了这种方法------->python多线程效率低下
GIL问题:由于python的全局解释器锁造成python的多线程执行效率低下
解决方法:
*不使用线程,使用多进程
*不使用c c++做解释器
*python线程适合高用时的IO操作,网络IO。不适合cpu密集型程序(cpu密集型程序时,多个线程之间的切换需要时间,而真正处理的时间可能比切换的时间还要少,浪费资源;IO密集型程序时,线程调用之后,IO会在后台进行读写操作,能够节省时间,线程会处理其他进程)