• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

10:10쯤에 질문있습니다.

23.10.10 23:58 작성 조회수 132

0

안녕하세요,
process.join()하면 subprocess의 job이 모두 complete된 것인데, 왜 다시 while True에서 process가 끝날 때까지 무한대기를 해야 하는 것인가요? 이미 process의 job은 종료된 것 아닌가요?

...
    q = Queue()
    
    process = []
    for i in range(5):
        t = Process(name=str(i), target=worker, args=(1, 100000000, q)) 
        process.append(t)
        t.start() 
...
    while True:

 

답변 1

답변을 작성해보세요.

1

안녕하세요. 좋은 질문입니다.

while True 문을 제거하고 같은 실행 결과가 나오는지 확인해보시면 됩니다!

무한대기의 의미보다는 모든 프로세스가 완전히 종료 될 수 있게 잠시 대기를 한다고 생각하시면 될 것 같습니다.

물론 while True 문이 없어도 동작 할 수 있습니다!

감사합니다.