Многопроцессорная обработка с использованием mp.Pool, чтобы избежать ожидания завершения всех подпроцессов? - PullRequest
1 голос
/ 18 апреля 2020

В моем коде есть пул задач, я хочу, чтобы событие происходило после того, как все задачи в пуле выполнены. Я знаю о методе объединения, но он останавливает мой основной процесс приложения tkinter, я использовал список процессов и проверил этот список с помощью потока, все ли процессы выполнены

Прямо сейчас я пытаюсь сделать так :

my_pool = [mp.Process(task).start() for task in tasks]
# checking if any process alive using a after method of tkinter
if not any(p.is_alive() for p in my_pool):
    # doing some event

Интересно, есть ли способ сделать то же самое, используя mp.Pool вместо join(), потому что он приостанавливает основной интерфейс моего приложения, пока весь процесс не будет выполнен в этом пуле .

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