У меня есть пул процессов в python, использующий from multiprocessing import Pool
. Я передаю этим процессам различные функции для запуска, вызывая функцию Pool.apply_async
. Если я ввожу ошибку в одну из этих функций (например, строку кода, такую как 5/0
), ожидаемый отчет командной строки ZeroDivisionError: integer division or modulo by zero
никогда не появляется, и программа никогда не завершается. Даже если я введу функцию обратного вызова в вызове Pool.apply_async
, функция обратного вызова никогда не будет вызвана, если функция, которую должен выполнить процесс, содержит ошибку.
Как я могу сделать так, чтобы эти процессы в пуле сообщали об ошибках и завершались, если что-то пойдет не так?