Многопроцессорность запускает новые экземпляры главного окна, когда оно заморожено как исполняемый файл

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

Обновление :Я подтвердил, что наличие линии заморозки _поддержки ()никак не влияет на эту проблему. Комментирование или раскомментирование дает точно такое же поведение: :копии главного окна открываются и ничего не делают. Вот блок, в котором он вызывается, в самом конце моего основного модуля Python:

if __name__ == '__main__':
    freeze_support()

    # (A bunch of commented-out lines)
    main()

5
задан Community 23 May 2017 в 10:31
поделиться