У меня есть приложение, написанное на Python и скомпилированное с PyInstaller. Он также использует PyQt для инфраструктуры графического интерфейса.
Запуск этого приложения имеет задержку около 10 секунд до того, как основное окно загрузится и будет показано. Насколько я могу судить, это не из-за медлительности моего кода. Вместо этого я подозреваю, что это связано с инициализацией среды исполнения Python.
Проблема заключается в том, что это приложение запускается с помощью приложения laucncher/taskbar. Пользователь запустит эту кнопку, чтобы запустить приложение, увидеть, как ничего не происходит, и щелкнуть в другом месте в другом приложении. Когда мое приложение показывает это окно, оно не может выходить на передний план из-за правил для SetForegroundWindow.
У меня есть доступ к источнику для загрузчика win32 PyInstaller, кода Python и даже кода запуска.
Мои вопросы:
-
Как запустить приложение быстрее?
-
Как я могу измерить время, затрачиваемое на первые несколько секунд жизни процесса?
-
Какова общепринятая методика сокращения времени до отображения первого окна?
Я бы не хотел добавлять всплеск по двум причинам: один, я думаю, что это не поможет (накладные расходы до запуска кода Python) и два, мне просто не нравятся заставки:)
Если мне нужно, я мог бы, вероятно, отредактировать заглушку загрузчика PyInstaller, чтобы создать окно, но этот другой маршрут я бы скорее не взял.
Спасибо за предложения.