Этот вопрос закрыт для ответов, так как повторяет вопрос Почему __name__ == __main__ в подпроцессе?
@sharkyyy3

Почему __name__ == __main__ в подпроцессе?

Пример кода который в консоле PyCharm отрабатывает нормально. А в консоли CMD нет.
from multiprocessing import Process

print(__name__)

def u_name (a):
    for i in range(10):
        print(a)

if __name__ == '__main__':

 while True:
  for i in range(100):
     if i == 2:
         print(i)
         a = input("Ваше имя: ")
         p_func1 = Process(target=u_name, args=(a, ))
         p_func1.start()
         print('Старт процесса')
         p_func1.join()

После интерпретации через pyinstaller в .exe файл
То же самое но теперь через cx_freeze выходят ошибки:
5dcd49c878973188637961.png
  • Вопрос задан
  • 191 просмотр
Решения вопроса 1
@sharkyyy3 Автор вопроса
В общем, как тут кто-то уже ответ давал, проблему частично удалось решить прописав multiprocessing.freeze_support(), после if __name__ == __main__.
Код после сборки pyinstaller`ом заработал как надо, вот только значение системной переменной в подпроцессе так и осталось __name__ = __main__
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы