Остановить скрипт при выполнении условия в потоке мультипроцессинга
Как при работе с мультипроцессингом остановить весь скрипт, если в одном из процессов будет достигнуто условие? То есть, есть мультипроцессинговый пул с аргументами, аргумент попадает в функцию, в которой происходят определенные вычисления и если это вычисление верно - то дальше вычисления проводить не нужно и все активные нужно прекратить. Как это сделать? Пробовал sys.exit, но он почему-то вообще ничего не делает. На месте STOP SCRIPT его вставлял:
main(arg):
...
if x > 0:
STOP SCRIPT IF CONDITION IS TRUE
if __name__ == '__main__':
with multiprocessing.Pool(processes=8) as pool:
pool.map(main, [ARGS])
Источник: Stack Overflow на русском