Pyinstaller exe на linux с кластером dask вызывает многопроцессорную бомбу - PullRequest
1 голос
/ 19 июня 2020

Я создаю исполняемый файл python в linux с помощью pyinstller. Скрипт использует локальный кластер Dask с аргументом processes=True. Скрипт отлично работает при выполнении команды python в терминале. Но это приводит к многопроцессорной бомбе при запуске с использованием исполняемого файла.

PS: Я смог разрешить это в windows, используя freeze_support() в Windows, но не смог найти способ сделать это в Linux.

Примечание: я использую Python3 .5.5 и pyinstaller3.6

1 Ответ

0 голосов
/ 27 июня 2020

В Python нужно запускать дополнительные процессы в блоке if __name__ == "__main__":

# myscript.py

import dask.distributed

... custom code

if __name__ == "__main__":
    client = dask.distributed.Client()  # spawns processes

    main()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...