pyinstaller: исполняется 2 экземпляра моего приложения cherrypy exe - PullRequest
6 голосов
/ 23 января 2010

У меня есть приложение cherrypy, которое я сделал с помощью pyinstaller. теперь, когда я запускаю exe, он загружает себя дважды в память. Наблюдение за менеджером задач показывает, как первый экземпляр загружается примерно в 1 КБ, затем через секунду второй экземпляр hte exe загружается примерно в 3 КБ. Если я закрою большее, оба процесса умрут. Если я закрою меньше, то только один умрет.

Загрузка exe с подпроцессом, если я пытаюсь proc.kill (), он убивает только маленький, оставляя другой запущенным в памяти. Является ли это побочным эффектом совместного использования cherrypy и pyinstaller?

Ответы [ 2 ]

5 голосов
/ 15 апреля 2010

PyInstaller порождает подпроцесс во время процесса загрузки. Это объясняется в разделе руководства .

1 голос
/ 25 января 2010

Было бы важно знать, какую версию CherryPy вы используете. Линия 2.x имела неудачный дизайн: функция автозагрузки всегда запускала второй экземпляр CherryPy, поэтому первый мог возродить ребенка, когда его убили. Это было исправлено в версии 3, чтобы использовать только один процесс. Если вы используете версию 2, отключите функцию автозагрузки с помощью записи конфигурации:

[global]
autoreload.on = False
...