当前位置: 首页 > news >正文

历下区网站建设公司互联网广告公司

历下区网站建设公司,互联网广告公司,外贸网站推广优化,浙江方远建设集团网站问题现象 我用pyside(类似pyqt)开发了一个应用程序。直接使用pycharm运行,一切都正常。但当我使用pyinstaller将它打包之后,再去运运行,发现窗口总是产生多个。 问题分析 直接运行没有问题,那么问题肯定…

问题现象

我用pyside(类似pyqt)开发了一个应用程序。直接使用pycharm运行,一切都正常。但当我使用pyinstaller将它打包之后,再去运运行,发现窗口总是产生多个。

问题分析

直接运行没有问题,那么问题肯定和pyinstaller相关。在网上搜索之后发现是由多进程引起的(multiprocessing模块)。
在他的wiki中有说明:

使用该multiprocessing模块时,必须调用
multiprocessing.freeze_support()
紧接在if name == ‘main’:主模块行之后。

这在Python官方文档中也有说明:
multiprocessing.freeze_support()
添加对使用multiprocessing已冻结的程序生成 Windows 可执行文件的支持。(已使用py2exe、 PyInstaller和cx_Freeze进行测试。)

需要在主模块行之后直接调用此函数。例如:if __name__ == '__main__'

from multiprocessing import Process, freeze_supportdef f():print('hello world!')if __name__ == '__main__':freeze_support()Process(target=f).start()

如果freeze_support()省略该行,则尝试运行冻结的可执行文件将引发RuntimeError。

在 Windows 以外的任何操作系统上调用时,调用freeze_support()都无效。另外,如果该模块在Windows上由Python解释器正常运行(程序没有被冻结),则freeze_support()没有任何影响。

http://www.khdw.cn/news/25792.html

相关文章:

  • 宁津做网站上海关键词推广公司
  • 做明星网站可以做那些子网页注册网站域名
  • 怎么自建导购网站做淘客图片优化是什么意思
  • o2o网站建设新闻今日武汉最新消息
  • 中国建设银行网站 党费国家高新技术企业认定
  • 建设通网站联系电话seo搜索引擎优化关键词
  • 油金地 做网站唐山seo排名外包
  • 营销网站建设计划书免费友情链接网
  • 万网是什么网站老铁seo外链工具
  • 网站建设济南有做的吗深圳网站设计专家乐云seo
  • 做门窗可以放什么网站福州seo服务
  • 自适应网站好处关键词快速优化排名软件
  • 163手机移动网站天津seo关键词排名优化
  • 广州知名的网站建设公司信息流广告优化
  • 24小时自动发货网站建设百度搜索引擎属于什么引擎
  • 网站初期seo怎么做seo优化什么意思
  • 石碣镇做网站太原今日新闻最新头条
  • 爱站工具维护推广运营是做什么的
  • wordpress报价计算器抖音seo公司
  • 汉南网站建设网络优化工程师是干什么的
  • 做网站手机版和电脑版怎么区分百度网络推广怎么做
  • 三叶草fz5722周口seo公司
  • 睢宁县建设局网站视频app推广
  • 网站开发 浏览器最简单的营销方案
  • 做天猫网站价格seo搜索引擎优化兴盛优选
  • 广州公司的网页怎么做的珠海百度seo
  • 济南网站建设推荐企优互联不错淘宝运营培训
  • 做一视频网站多少钱新闻稿代写平台
  • 做的比较简约的网站好网站
  • 广东网站制作多少钱seo排名点击工具