[JAVA] Thread 수 증가로 인한 OutOfMemoryError 발생 원인
Thread 수가 증가하면서 발생하는 OutOfMemoryError는 흔히 Heap 문제가 아니라는 점에서 처음에 많이 헷갈립니다. 실제로는 스레드 자체가 메모리를 사용하는 구조를 이해하는 것 입니다.Java thread 증가로 인한 OutOfMemoryError 발생 원인Java에서 thread 수 증가로 인한 OutOfMemoryError는 힙 메모리가 부족해서가 아니라, OS 레벨에서 할당 가능한 스레드 자원이 한계에 도달했을 때 발생합니다. 즉, 애플리케이션 내부 문제가 아니라 JVM과 OS가 함께 관리하는 영역의 한계라고 보면 됩니다. Thread가 메모리를 사용하는 방식Java에서 스레드를 생성하면 단순히 객체 하나가 만들어지는 것이 아니라, 각 스레드는 별도의 Stack 메모리를 할당받습니다..