유닉스 솔라리스의 한 프로세스에서 NLWP 한계를 늘리는 것과 관련하여 질문이 있습니다.Solaris unix NLWP 한도
한다고 가정 한 자바 프로세스가 실행되고 나는이
prstat
같은 명령을 입력하면 그것은 다음과 같은 내용으로 출력을 제공 :
자바/여기에 2000
2000입니다 NLWP . NLWP의 한도를 어떻게 높이거나 결정할 수 있습니까? 기본적으로
Thanak
유닉스 솔라리스의 한 프로세스에서 NLWP 한계를 늘리는 것과 관련하여 질문이 있습니다.Solaris unix NLWP 한도
한다고 가정 한 자바 프로세스가 실행되고 나는이
prstat
같은 명령을 입력하면 그것은 다음과 같은 내용으로 출력을 제공 :
자바/여기에 2000
2000입니다 NLWP . NLWP의 한도를 어떻게 높이거나 결정할 수 있습니까? 기본적으로
Thanak
, 아무 하드 제한이 없지만, 작업, 프로젝트 또는 영역 파 스레드의 수를 상한선 설정이있을 수 있습니다. 참조 :
task.max-lwps, project.max-lwps and zone.max-lwps
그렇지 않으면 스택 크기 및 사용되는 jvm의 종류에 따라 제한에 도달 할 수 있습니다.
메모리 부족 오류가 발생하는 경우 64 비트 JVM으로 전환하고 코드와 호환되는 경우 -Xss
옵션을 사용하여 Java 스택 크기를 줄이십시오.
-Xss128k
하지만 스택이 너무 작아서 java.lang.StackOverflowError 오류가 발생합니다.
마지막으로 Java 프로세스가 스레드의 수를 제한하는 경우 JVM 또는 시스템 튜닝으로 수행 할 수있는 작업이 없습니다. 코드 또는 프로그램 설명서를 살펴보십시오.
예. 64 비트 JVM을 실행 중입니다. 다음과 같은 설정이 있습니다. -Xss256k -XX : + UseLargePages -XX : LargePageSizeInBytes = 256m. 그리고 cna 당신 task.max-lwps, project.max-lwps 및 zone.max-lwps에 정교한? 이 위치는 어디서 변경/확인할 수 있습니까? –
이것은 stackoverflow의 범위를 벗어 났지만'prctl'출력과 https://docs.oracle.com/cd/E19044-01/sol.containers/817-1592/rmctrls.task-3/index를 살펴보십시오. .html 초보자를위한. –
jlliagre
감사합니다. 그것은 모든 2.15G에 대해 동일하게 나타납니다. project.max-lwps 시스템 2.15G 최대 거부 - 이것이 스레드 수와 어떤 관련이 있는지 알려주세요. 아니면 그냥 스택의 크기와 관련이 있습니까? –