파이썬 멀티스레드 질문입니다


각각 스레딩을 독립적으로 실행시키고싶습니다.

1스레드와 2스레드가 작동하고. 1스레드가 종료될때 2스레드가 아직도 동작중이여도 1스레드가 다시 작동되게 하고 싶습니다.

반복문 안에

T1=Thread(target=~~~)
T2=Thread(target=~~~)
T1.start()
T2.start()
T1.join()
T2.join()

이런식으로 썼는데요. T2.join() 부분때문에 T1스레드가 T2스레드가 종료될때까지 기다리네요.

방법이 있을까요?

  • 2017년 08월 05일에 작성됨

조회수 173


1 답변


is_alive 를 써서 T2가 살아있을 때만 join을 하면 어떨까요?

T1.join()
while True:
    if T2.is_alive():
        T1.start()
    else:
        T2.join()

이런 느낌으로요.

  • 2017년 09월 19일에 작성됨
    ლ( ╹ ◡ ╹ ლ) 쭈물

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close