Я уже задавал этот точный вопрос год назад. В моем приложении используется многопроцессорный модуль Python, который отлично работает при запуске из командной строки, но когда я упаковываю его как исполняемый файл с помощью Pyinstaller, несколько процессов появляются как новые экземпляры оригинала, а не запускают функцию, которую они должны запускать. Совет, который мне дали в прошлый раз, как и везде, где я смотрю, это позвонитьmultiprocessing.freeze_support(
)в начале моего блока if __name__ == "__main__":
, который я делал все это время, но по какой-то причине я внезапно снова сталкиваюсь с этой проблемой. Что еще может быть причиной этого?
Обновление :Я подтвердил, что наличие линии заморозки _поддержки ()никак не влияет на эту проблему. Комментирование или раскомментирование дает точно такое же поведение: :копии главного окна открываются и ничего не делают. Вот блок, в котором он вызывается, в самом конце моего основного модуля Python:
if __name__ == '__main__':
freeze_support()
# (A bunch of commented-out lines)
main()