摘要: 1、整理GIL解释器锁,解释以下问题 1、什么是GIL Global Interpreter Lock 全局解释器锁 2、有了GIL会对单进程下的多个线程造成什么样的影响 使得单进程下的多线程按照串行的方式使用解释器资源。 3、为什么要有GIL 放置线程竞争解释器资源,导致使用出错,也使得解释器的内 阅读全文
posted @ 2018-11-12 21:32 msjaxuexi 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 进程池 就是一个装进程的池子 为什么出现进程池 当进程很多时候方便管理进程 什么时候用 当并发量特别大的时候,列入双十一 很多时候进程是空闲的,就让他进入进程池,让有任务处理时才从进程池取出来使用。 进程池的使用 总结 客户端 线程池使用方法基本相同(线程数限制为当前cpu核心数的5倍 20线程) 阅读全文
posted @ 2018-11-12 18:15 msjaxuexi 阅读(104) 评论(0) 推荐(0) 编辑
摘要: GIL和互斥锁的区别 全局锁不能保证自己开启线程安全,但是能保证解释器中的数据是安全的 GIL在线程调用解释器,自动加锁,在遇到IO操作的情况或代码执行完成时,自动解锁。 所以GIL全局解释锁是工作在同一进程中,使得同一进程众多线程是以串行的方式执行。GIL用来保证同一进程的解释器资源被合理竞争。互 阅读全文
posted @ 2018-11-12 16:56 msjaxuexi 阅读(223) 评论(0) 推荐(0) 编辑
摘要: GIL全局解释器锁 Global Interpreter Lock 全局解释器 锁就是为了避免资源竞争造成数据的错乱 为什么解释器要加锁 1.启动解释器进程 python.exe 2.解析你的py文件并执行它 每个py程序中都必须有解释器参与,解释器其实就是一堆代码,相当多线程要调用同一个解释代码, 阅读全文
posted @ 2018-11-12 16:39 msjaxuexi 阅读(126) 评论(0) 推荐(0) 编辑