ExecutorService는 작업 제출과 실행 자원 관리를 분리한다

호출 코드가 thread 생성·queue·lifecycle을 모두 알면 정책을 바꾸기 어렵습니다.

ExecutorServicetask lifecycle owner

submitter

Runnable·Callable

work queue

backpressure

worker pool

thread 재사용

Future

result·failure

shutdown

graceful·now

핵심: Executor가 수용량과 worker 수명, Future를 한 경계에서 관리합니다.