Python MultiProcessing: убить дочерний процесс на основе события в родительском процессе - PullRequest
0 голосов
/ 17 октября 2019

Допустим, у меня есть следующий код:

quit = Event()
while True:
    if something > max_size:
        quit.set()
        break 
    else:
        p1 = Process(target=B(argv).calc(value, quit), name="d")

, где B выглядит следующим образом:

class B:
    def __init__(self, *args):
        self.argv = argv
    def calc(self, value, quit):
        while not quit.is_set():
             while True:
                 for c in value:
                      ##Do some logic....

Что я пытаюсь сделать в рабочей задаче B. calc заключается в том, что до тех пор, пока основной процесс не установит событие quit, функция B (). calc () должна продолжаться. Цикл while в B (). Calc () необходим, так как я пытаюсь реализовать перенос файлов на основе некоторой логики. Итак, в тот момент, когда основной процесс устанавливает событие quit, я бы хотел убить дочерний процесс.

Как мне это сделать?

...