【问题标题】:pyinstaller: 2 instances of my cherrypy app exe get executedpyinstaller:我的cherrypy应用程序exe的2个实例被执行
【发布时间】:2010-01-23 20:34:54
【问题描述】:

我有一个cherrypy 应用程序,我用pyinstaller 制作了一个exe。 现在,当我运行 exe 时,它​​会将自身两次加载到内存中。观察任务管理器显示第一个实例加载到大约 1k,然后第二个 hte exe 实例加载到大约 3k ram。如果我关闭较大的一个,两个进程都会死。如果我关闭较小的一个,则只有一个死。

使用子进程加载 exe,如果我尝试 proc.kill(),它只会杀死小的一个,而另一个在内存中运行。这是同时使用cherrypy和pyinstaller的副作用吗?

【问题讨论】:

    标签: python cherrypy pyinstaller


    【解决方案1】:

    PyInstaller 在其启动过程中生成一个子进程。 a section of its manual 对此进行了解释。

    【讨论】:

    【解决方案2】:

    了解您使用的 CherryPy 版本非常重要。 2.x 行有一个不幸的设计:自动重载功能总是启动 CherryPy 的第二个实例,因此第一个实例可以在子进程被杀死时重生。这在版本 3 中已修复为仅使用一个进程。如果您使用的是版本 2,请通过配置条目关闭自动重新加载功能:

    [global]
    autoreload.on = False
    

    【讨论】:

      猜你喜欢
      • 2021-10-14
      • 1970-01-01
      • 1970-01-01
      • 2018-04-30
      • 2019-11-02
      • 2014-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-19
      相关资源
      最近更新 更多