GIL锁、进程池与线程池、同步异步

GIL锁定义

GIL锁:Global Interpreter Lock  全局解释器

本质上是一把互斥锁

官方解释:

  在CPython中,这个全局解释器锁,也称为GIL,是一个互斥锁,防止多个线程在同一时间执行Python字节码,

  这个锁是非常重要的,因为CPython的内存管理是非线程安全的,也有很多其他的特性依赖于GIL(比如有些

  东西是依赖这个GIL写好的,要替换成本很高),所以即使它影响了程序的效率,也无法直接将其去除。

需要知道的是,解释器并不只有CPython,还有PyPy,Jpython等等,GIL仅存在于Cpython中,这并不是Python

这们语言的问题,而是CPython解释器的问题

GIL解决的问题

GIL带来的问题

关于GIL的性能讨论

自定义的线程锁与GIL的区别

进程池与线程池

同步异步

异步回调

猜你喜欢

转载自www.cnblogs.com/hesujian/p/10982573.html