Я работаю над скриптом Python, и мне нужна помощь. Этот скрипт работает очень хорошо и дает мне результаты, которые мне нужны, но сценарий не выходит из-за того, что p-процесс все еще запущен. Как я могу это исправить?Как закрыть этот цикл?
Позвольте мне сказать, что в функции run_up это должен быть цикл while. Это упрощенная версия того, что я на самом деле пытаюсь сделать, и цикл for не будет работать для того, что мне нужно.
from multiprocessing import Process, Pipe
def run_up(conn):
i = 0
while True:
conn.send(i)
i += 1
conn.close()
def div_check():
while True:
v = parent_conn.recv()
if v > 95:
break
elif v % 5 == 0:
print '%i is divisible by 5' % v
if __name__ == '__main__':
parent_conn, child_conn = Pipe()
p = Process(target=run_up, args=(child_conn,))
p.start()
div_check()
p.join()
Следует ли принудительно завершить детский процесс или продолжить его? – sergzach