반응형
병렬 작업 처리가 많아지면 스레드 개수가 무한정으로 증가하고 CPU가 바빠지며 메모리 사용량이 늘어난다.
따라서 애플리케이션의 성능이 급격하게 저하되게 된다.
스레드 풀
작업 처리에 사용되는 스레드를 제한된 개수 만큼 미리 생성해서 작업 큐에 쌓여지는 작업들을 하나씩 스레드가 맡아서 처리한다. 제한을 걸기 때문에 무한정으로 증가하지 않으며 서버가 뻗지 않게 된다.
코어 스레드 수
최소 스레드 수 (60초 동안 추가된 스레드가 아무 작업 하지 않으면 놀고 있는 스레드가 존재해 없애야한다.)
스레드풀의 스레드는 기본적으로 데몬 스레드가 아니기 때문에 main 스레드가 종료되더라도 계속 실행 되므로
반드시 종료시키려면 스레드 풀을 따로 종료시켜야한다.
반응형
'[Java] > [Java]' 카테고리의 다른 글
[Java] Double vs BigDecimal (정확한 소수점 계산 방법) (0) | 2023.08.08 |
---|---|
[Java] 익명 클래스, 함수형 인터페이스, 람다식 [익명 객체] (0) | 2023.08.07 |
[Java] 자바 멀티스레드 [Multi-Thread] 스레드 그룹 (0) | 2022.09.23 |
[Java] 자바 멀티스레드 [Multi-Thread] Runnable vs Thread (0) | 2022.09.22 |
[Java] 자바 Generic (제네릭) (0) | 2022.09.13 |