나는 단일 스레드 스레드 풀 실행 프로그램 인 java.util.concurrent.Execution 서비스를 가지고있다. 나는 그것에 특정 과제를 제출한다. 태스크가 체크되지 않은 예외를 던지면 스레드는 죽지 만 서비스는 새로운 스레드가 생성되고 이후 작업이 그 스레드에서 수행되도록합니다. 그러나 나는이 기능을 원하지 않고 여전히 threadPoolExecutor를 사용하려고합니다. 즉, 태스크가 검사되지 않은 예외를 throw하면 서비스를 shutDownNow()로 변경합니다.threadpoolexecutor 죽이기
이것을 달성하는 가장 좋은 방법은 무엇입니까? 생성 된 쓰레드의 수를 제한하는 커스텀 쓰레드 팩토리를 사용하면 좋을까요?
JUnit에서 ScheduledThreadPoolExecutor를 사용하여 여러 스레드를 실행하는 경우 afterExecute() 메서드를 재정의하는 것과 비교할 때이 메서드에 대한 Throwable 인수가 어떤 이유 때문에 항상 null이기 때문에 매우 유용합니다. –