国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

解決python使用multiprocessing多線程打包成exe文件后內(nèi)存爆裂

2023-03-15 19:52 作者:眾創(chuàng)云  | 我要投稿

關(guān)于Python進程池pool與pyinstaller打包exe程序運行的奇怪問題!

最近想吧自己寫的py文件打包成exe文件給別人用,學(xué)習(xí)了pyinstaller也基本會用了,但是在打包多進程程序的時候遇到奇怪問題,向各位求解。

我吧程序簡化了下:

但是用pyinstaller 打包EXE文件,問題來了,打包過程也很簡單>pyinstaller -F XXX.py

然后我執(zhí)行EXE文件,意向不到的結(jié)果來了,死循環(huán)?。。。。。。。。。?!不會結(jié)束。

出坑:解決了?。。。。。。。。。。。?!

在if __name__ == '__main__':?中加入:multiprocessing.freeze_support()?

即:

知識點:
1、因為開啟子進程是不支持打包exe文件的,所以會不停向操作系統(tǒng)申請創(chuàng)建子進程,
而這個代碼 multiprocessing.freeze_support() 作用就是支持打包到Windows的EXE文件。

2、多進程的程序運行后,如果直接關(guān)閉控制臺窗口,那么整個程序都會退出。
如果是 進入 任務(wù)管理器,單獨結(jié)束 控制窗口 的進程,如果子進程不是守護進程,那么子進程還是會繼續(xù)運行。

3、如果是多線程的,則沒這個問題,可以直接打包。
但有個小提示, 如果是 tkinter 的圖形界面運行的,是多線程的話,如果子線程不是守護線程,那么關(guān)掉主界面后,子線程會繼續(xù)運行。
如果也是控制臺窗口的話,效果和上面 2 提到的進程效果一樣。


解決python使用multiprocessing多線程打包成exe文件后內(nèi)存爆裂的評論 (共 條)

分享到微博請遵守國家法律
毕节市| 梅河口市| 莱阳市| 镶黄旗| 西乡县| 阳山县| 平和县| 搜索| 永安市| 石门县| 大竹县| 张掖市| 开化县| 高唐县| 新巴尔虎右旗| 桐庐县| 浦城县| 扎赉特旗| 农安县| 枣强县| 濉溪县| 庄河市| 汉沽区| 阿瓦提县| 蓝田县| 桑植县| 和静县| 四会市| 巴里| 保亭| 九寨沟县| 襄樊市| 达拉特旗| 阜康市| 新泰市| 顺平县| 冕宁县| 思茅市| 仪征市| 凤庆县| 阜新市|