Pyinstaller打包python程序为exe时 程序多线程导致打开非常多窗口解决

装了个Pyinstaller打包exe

bash 复制代码
pip install Pyinstaller

打包命令

bash 复制代码
Pyinstaller -F main.py
Pyinstaller -F -w main.py #不带控制台
Pyinstaller -F -w -i 1.ico main.py #指定图标不带控制台

打包完的exe一运行开了一坨窗口,一眼多线程,我程序里的多线程如下

我把poolsize设置为1后问题确实消失,但是我不希望加密速度变慢

python 复制代码
def A生成秘钥并保存():
    pubkey, privkey = rsa.newkeys(4096, poolsize=16)  # 密钥长度128 256 512 1024 2048 3072 4096    poolsize=核心数

解决方法

Recipe Multiprocessing · pyinstaller/pyinstaller Wiki (github.com)

文档所示,windows和旧版本的pyinstaller打包都需要在main里加点神奇小料。

python 复制代码
if __name__ == '__main__':  

    multiprocessing.freeze_support() 
    #pyinstaller打包多线程需要,不然崩一堆窗口

调用的crypto库也是,windows底下有点问题要扯皮。

相关推荐
老华带你飞5 小时前
博物馆展览门户|基于Java博物馆展览门户系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端
liulilittle5 小时前
FileStream C++
开发语言·c++·cocoa
点PY6 小时前
C++ 中 std::async 和 std::future 的并发性
java·开发语言·c++
不会代码的小猴6 小时前
C++的第九天笔记
开发语言·c++·笔记
测试19986 小时前
功能测试、自动化测试、性能测试的区别
自动化测试·python·功能测试·测试工具·职场和发展·性能测试·安全性测试
CoderYanger6 小时前
Java SE——12.异常(≠错误)《干货笔记》
java·开发语言
Data_agent6 小时前
1688获得1688店铺所有商品API,python请求示例
java·开发语言·python
一晌小贪欢6 小时前
【Python办公】-图片批量添加文字水印(附代码)
开发语言·python·图片水印·python水印·python添加水印·图片添加水印
Yeats_Liao6 小时前
CANN Samples(十三):Ascend C 算子开发入门
c语言·开发语言
越来越无动于衷6 小时前
Java 实现 WebService(SOAP)联网调用:从原理到实战
java·开发语言