贾科磊010
贾科磊010
关注数: 39
粉丝数: 177
发帖数: 1,223
关注贴吧数: 56
关于GIL(全局解释器锁)与线程互斥锁的理解 全局解释器锁简称:GIL(Global Interperter Lock)。首先需要明确一点就是,GIL并不是Python语言的特性,它是在现实Python解释器时引用的一个概念。GIL只在CPython解释器上存在。作用是保证同一时间内只有一个线程在执行。 线程互斥锁和GIL的区别 1.线程互斥锁是Python代码层面的锁,解决Python程序中多线程共享资源的问题(线程数据共共享,当各个线程访问数据资源时会出现竞争状态,造成数据混乱); 2.GIL是Python解释层面的锁,解决解释器中多个线程的竞争资源问题(多个子线程在系统资源竞争是,都在等待对象某个部分资源解除占用状态,结果谁也不愿意先解锁,然后互相等着,程序无法执行下去)。 GIL对程序有啥影响 1.Python中同一时刻有且只有一个线程会执行; 2.Python中的多个线程由于GIL锁的存在无法利用多核CPU; 3.Python中的多线程不适合计算机密集型的程序; 4.如果程序需要大量的计算,利用多核CPU资源,可以使用多进程来解决。 GIL 的存在使程序无法充分利用CPU进行运算,那么它真的一无是处么? 再进一步分析,程序分为两种,一种是上面提到的计算密集型程序,另一种叫作IO密集型程序。 大部分的程序在运行时,都需要大量IO操作,比如网络数据的收发,大文件的读写,这样的程序称为IO密集型程序。 IO密集型程序在运行时,需要大量的时间进行等待,那么这时如果IO操作不完成,程序就无法执行后面的操作,导致CPU空闲。 那么 GIL 对于这种IO密集型程序会有什么影响? 在解释器解释执行任何 Python 代码时,都需要先获得这把锁才行,在遇到 I/O 操作时会释放这把锁。如果是纯计算的程序,没有 I/O 操作,解释器会每隔 100 次操作就释放这把锁,让别的线程有机会执行,提高Python程序的执行效率。 如何改善GIL产生的问题 因为 GIL 锁是解释器层面的锁,无法去除 GIL 锁在执行程序时带来的问题。只能去改善。 1.更换更高版本的解释器,比如3.6,从3.2版本开始,据说Python对解释做了优化 2.更换解释器,比如JPython,但是由于比较小众,支持的模块较少,导致开发的效率降低 3.Python为了解决程序使用多核的问题,使用多进程代替多线程
一个游戏的APP,下载注册登陆一个2快 注册登陆截图就OK一个2快
【华语】[顶级夜店DJ名曲排行3CD共45首][APE/分轨][1.26G]
【华语】Carpenters-《The Ultimate collection》WAV/分轨/905MB
【华语】[邓紫棋《百变天后》3CD][WAV/分轨][1.95G]
【华语】[张国荣-《1978-2007 140CD》合集][APE/整轨]
【华语】张惠妹《偏执面》[WAV/整轨][385.2MB]
【华语】许嵩《不如吃茶去》[320K/MP3][84.9MB]
【华语】庄心妍《我知道》[320K/MP3][103.1MB]
【华语】许佳慧《平行线》[FLAC/整轨][276.2MB]
【其它】群星-《Marry Me?精选》[320K/MP3][185.8MB]
【华语】炎亚纶《DRAMA》[EP][320K/MP3][57MB]
【华语】《我是歌手 第二季 总决赛 第13期》[WAV/分轨][548.5MB]
[湖南卫视 我的纪录片 我的歌手之七剑下天山][1080P/TS][1.75G]
[2014年香港吴镇宇剧情大片][三生][WEB-MKV/1.16G]
【华语】《我 是 歌 手 第二季 第11期》[FLAC/分轨][196.7MB]
【华语】《我是歌手第二季 半决赛 第12期》[FLAC/分轨][199.3MB]
【华语】赵雷《赵小雷》[FLAC/整轨]北京胡同味本地民谣~
【华语】吉克隽逸《吉克隽逸 同名专辑》[FLAC/整轨][204.2MB]
[过界男女][HD-MKV/1.6G][国语中字][高清版发布]
[300勇士:帝国崛起/战狼300:帝国崛起][TS-RMVB/508MB]
【华语】李云迪《皇帝幻想曲》[320K/MP3]
求鉴定!!!!! 大家看看这个号值多少钱!! 火箭兵是白金古斯塔夫火箭炮+8,衣服是+9,帽子+8,翅膀+8,负武器+5,刀+4
#我的贴吧10年足迹,共同成长,深藏功与名 贴吧十年,时光匆匆,再回首,白驹过隙一分钟。 那些褪色的青春梦,普通得不能再普通,玩贴吧的都懂。 贾君鹏,追贴,抢楼,往事如风,足迹不留空。 http://tieba.baidu.com/home/zuji
测试 *罒▽罒* --来自助手版贴吧客户端
大家来看看这个号值多少钱? 19级白金ak加7.全身精良加7套看图。进阶区无敌啊 !!!(相当于加10)个人4866、另有方炮、手摇、电雾复仇者、39个强化部件。
1
下一页