모든 JVM 플래그 인쇄
대상 JVM 플래그를 찾았습니다.
java -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal -version
수백 가지의 다양한 옵션이 출력됩니다. 전에 들어본 적이 없습니다.또한 기본값을 인쇄하여 JVM 동작을 더 잘 진단할 수 있습니다.또 다른 흥미로운 플래그는 다음과 같습니다.
-XX:+UnlockExperimentalVMOptions
그들 각각에 대해 설명하는 문서를 아는 사람이 있습니까?
또한 놓치지 마세요-XX:+JVMCIPrintProperties
Graal JIT 옵션용입니다.
소스를 조사하기 전에 다음 발췌문을 훑어보고 적절한 옵션을 빠르게 찾을 수 있습니다.
https://chriswhocodes.com/ (OracleJDK 6/7/8/9/10/11/12, OpenJDK 8/9/10/11, Graal CE/E, OpenJ9, Zing)
http://jvm-options.tech.xebia.fr/
http://www.pingtimeout.fr/2012/05/jvm-options-complete-reference.html
http://stas-blogspot.blogspot.com/2011/07/most-complete-list-of-xx-options-for.html
내가 찾은 최고의 문서는 소스야.
디버깅 빌드를 작성하기 위해 이 SO Q&A를 사용했습니다.이 디버깅 빌드를 사용하면java -XX:+AggressiveOpts -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+PrintFlagsFinal -XX:+PrintFlagsWithComments -version
.
소스가 있는 디렉토리에서 다음을 실행할 수 있습니다(Linux, Cygwin 등을 사용하고 있다고 가정).
grep -FR 'UnlockExperimentalVMOptions' hotspot/
또는 다음 항목(이 항목만 참조)*.cpp
그리고.*.hpp
파일):
find hotspot/ -name '*.[ch]pp' -exec grep -F 'UnlockExperimentalVMOptions' {} +
그런 다음 소스 파일을 살펴봅니다.모든 옵션을 설명하는 문서가 없는 가장 큰 이유는 이러한 옵션 중 일부는 JVM을 제대로 이해하는 사용자에게 맡겨두는 것이 좋기 때문일 수 있으며, 이를 위한 가장 좋은 방법은 소스 코드를 숙지하는 것입니다.
그래서 위대한 스승의 말을 빌리자면use the source
!
언급URL : https://stackoverflow.com/questions/10486375/print-all-jvm-flags
'programing' 카테고리의 다른 글
Java의 ByteBuffer에서 바이트 배열을 가져옵니다. (0) | 2022.11.03 |
---|---|
여러 Java 프로그램이 동일한 기계에서 실행되는 경우 (0) | 2022.11.03 |
오래된 데이터를 잃지 않고 FileOutputStream을 사용하여 데이터를 쓰는 방법 (0) | 2022.11.03 |
캐시 회선 크기에 맞게 조정하는 방법 및 시기 (0) | 2022.11.03 |
AWS 람다:작업 시간 초과 (0) | 2022.11.03 |