Я хочу добиться 2 вещей: 1) Поддерживать жизнь родителя, пока ребенок / работник не завершит работу, и 2) Если ребенок / работник переходит в исключение, тогда родитель должен остановиться после этого исключения. Не следует запускать оставшихся работников после исключения.
Я написал код, но не могу получить то, что ищу.
def waitTime(ds, index):
try:
if index == 3:
index = 15
ds[index] = 'WORKED!!!'
except:
global isException
isException = True
if __name__ == '__main__':
isException = False
ds = multiprocessing.Manager().list([None]*5)
new = []
for i in range(1, len(ds)+1):
temp = multiprocessing.Process(target=waitTime, args=(ds, i-1))
new.append(temp)
temp.start()
temp.join()
if isException:
break
print(ds)
мои ожидаемые результаты: ['WORKED !!!', 'WORKED !!!', 'РАБОТАЛИ !!!', Нет, Нет]
Мои реальные результаты: ['РАБОТАЛИ !!!', 'РАБОТАЛИ !!!', 'РАБОТАЛИ !!!', 'РАБОТАЛИ !!! ',' РАБОТАЛ !!! ']