더북(TheBook)

이름에서 알 수 있듯, 스레드 풀은 프로그램이 시작할 때 상당 시간 활용될 워커 스레드를 정해진 수만큼 만들어서 풀(어떤 통)에 담아두는 패턴을 말한다. 어떤 작업을 실행해야 할 때가 되면 이 풀에서 미리 만들어둔 스레드를 가져와 그 작업에 배정한다. 덕분에 개발자는 매번 스레드를 직접 만들 필요가 없으며 마치 할 일 목록에 새로 생긴 일을 추가하듯 스레드 풀에 작업을 보내 스레드를 배정받으면 된다.

스레드 풀 패턴으로 스레드를 재사용하면 스레드를 생성하고 종료하는 데 필요한 오버헤드도 줄어들고 예기치 않은 작업 실패(예외 발생 등)가 스레드에 미치는 영향도 줄일 수 있다. 스레드 생성보다 수행 시간이 짧은 작업이라면 스레드 재사용의 효과가 더욱 커진다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.