로딩
요청 처리 중입니다...

Android/JAVA - 인터럽트(interrupts)와 조인(join)

 Android/JAVA - 인터럽트(interrupts)와 조인(join)

1. Interrupts (인터럽트) 인터럽트(interrupts) 는 어떠한 스레드에게, 지금 그 스레드가 하고 있는 일을 멈추고 다른 일을 하라고 알려줄 때 사용된다.

스레드가 인터럽트를 받았을 때 어떻게 반응할지를 결정하는 것은 개발자가 할 일이지만, 인터럽트를 받은 스레드는 종료시켜주는 것이 보편적이다. 동작하고 있는 스레드에게 인터럽트를 날리는 방법은 해당 스레드의 오브젝트의 interrupt 메소드를 호출하면 된다.

그리고, 이렇게 인터럽트가 발생하면, 해당 스레드가 발생한 인터럽트를 제대로 처리할 수 있는 메카니즘을 적절히 작성해 주어야 한다. 1-1. Supporting Interruption (인터럽트 처리하기) 스레드에서 인터럽트를 처리하는 방식은 두 가지가 있다.

만약 스레드의 run() 메소드에서 InterruptedException 을 던질 수 있는 메소드를 자주 호출한다면, run() 메소드 내에서 try~catch 문을 통해 해당 익셉션(exception)...