스레드 활용
- 스레드 예외 처리
- 스레드 중지
- 사용자 스레드 vs 데몬 스레드
- ThreadGroup
- ThreadLocal
쓰레드 예외 처리

-
run()에서는 에러 예외 처리가 어렵다.
-
UncaughtExceptionHandler
- 캐치되지 않는 예외에 대해서 Thread가 갑자기 종료되었을 때 호출되는 핸들러 인터페이스.
- Thread가 갑자기 종료되었는지 대상 스레드와 예외를 파악할 수 있다.
-
Thread API
- static void setDefaultUncaughtExceptionHandler
- 모든 스레드에서 발생하는 uncaughtExceptionHandler를 처리
- setUncaughtExceptionHander
- 대상 스레드에서 세세하게 지정. default 메서드보다 우선순위가 높다.

- 스레드 외부에서는 Handler를 설정
- 내부에서는 Runnable 인터페이스를 통해 run()을 실행할 텐데, 이때 uncaughtException이 발생.
- 이때 dispatchUncaughtException 메서드를 실행한다.
- 우리가 정의한(스레드에 저장한) UncaughtExceptionHandler를 가져와서
- uncaughtException메서드를 실행한다.
