Python - Родительский процесс, убивающий пул, не убивает дочерние процессы? - PullRequest
0 голосов
/ 09 июля 2020

Я создал экземпляр Pool для запуска 4 процессов.

Я вижу 5 python .exe процессов, запущенных в диспетчере задач (windows машина). Когда я щелкаю правой кнопкой мыши и убиваю основной процесс python .exe, он не убивает дочерние процессы, и в результате дочерние процессы остаются в памяти.

Как решить эту проблему?

from multiprocessing import Pool

import time

work = (["A", 5], ["B", 2], ["C", 1], ["D", 3])


def work_log(work_data):
    time.sleep(100000))
    


def pool_handler():
    with Pool(4) as p:
     r = p.map_async(work_log, work)
     r.get()


if __name__ == '__main__':
    pool_handler()
...