2014-10-29 4 views

답변

1

일반적으로 부모 클래스의 메서드를 재정의하는 경우 부모 클래스의 작동 방식을 절대적으로 확신하지 않는 한 재정의 된 메서드를 호출해야하며이 변경으로 인해 부모 클래스의 메서드가 중단되지 않습니다. 즉 공식적으로 상속은 is-a 관계를 나타내며 서브 클래스는 여전히 threading.Thread이므로 적절하게 작동해야합니다. 상속 문의 주제는 사실 매우 광범위합니다. 관심이 있으시면 Liskov substitution principle으로 시작하는 것이 좋습니다.

파이썬 설명서의 내용은 threading.Thread.join([timeout])입니다.

스레드가 종료 될 때까지 대기하십시오. 이렇게하면 join() 메서드가 호출되는 스레드가 정상적으로 또는 처리되지 않은 예외를 통해 종료되거나 선택적 시간 제한이 발생할 때까지 호출 스레드가 차단됩니다.

즉, join을 호출하지 않으면 하위 클래스 'join이 더 이상 호출 스레드를 차단하지 않습니다. 그것이 당신이 원하는 것이라면, 그냥 _exitCherrypyBus 정도의 다른 방법을 사용하는 것이 좋습니다.