[java] 쓰레드 풀의 최대 쓰레드 개수 설정 방법

자바에서 쓰레드 풀을 사용할 때, 쓰레드 풀의 최대 쓰레드 개수를 설정하는 방법에 대해 살펴보겠습니다.

쓰레드 풀의 최대 쓰레드 개수란?

쓰레드 풀은 작업을 수행하는 데 사용되는 쓰레드의 모음입니다. 쓰레드 풀은 초당 생성되는 쓰레드의 수를 제한함으로써 시스템 자원을 효율적으로 관리할 수 있습니다. 쓰레드 풀의 최대 쓰레드 개수는 한 번에 풀에서 실행되는 쓰레드의 최대 수를 의미합니다.

방법

쓰레드 풀의 최대 쓰레드 개수는 ThreadPoolExecutor 클래스의 생성자를 통해 설정할 수 있습니다. 아래는 쓰레드 풀에서 최대 쓰레드 개수를 설정하는 예제 코드입니다.

import java.util.concurrent.*;

public class ThreadPoolExample {
    public static void main(String[] args) {
        int corePoolSize = 5;
        int maxPoolSize = 10;
        long keepAliveTime = 5000;

        ExecutorService threadPool = new ThreadPoolExecutor(
                corePoolSize,
                maxPoolSize,
                keepAliveTime,
                TimeUnit.MILLISECONDS,
                new LinkedBlockingQueue<>()
        );
    }
}

위 예제 코드에서 corePoolSize는 쓰레드 풀의 기본 크기를 설정하고, maxPoolSize는 쓰레드 풀의 최대 크기를 설정합니다. 쓰레드 풀의 크기는 corePoolSize로 시작하여 요청이 증가함에 따라 maxPoolSize까지 확장됩니다. keepAliveTime은 비활성 상태의 쓰레드가 유지되는 시간을 설정합니다.

결론

쓰레드 풀의 최대 쓰레드 개수를 설정하여 시스템의 부하를 효과적으로 관리할 수 있습니다. 적절한 최대 쓰레드 개수 설정은 시스템의 안정성과 성능을 향상시키는 데 중요합니다.

참고 자료