好的 – 我知道我可以像这样运行我的java进程:
java -XX:+PrintCompilation
我可以看到如下输出:
c:\>java -XX:+PrintCompilation -jar c:\FooProgram.jar
1 java.lang.String::charat (33 bytes)
2 java.lang.Math::max (11 bytes)
1% java.util.jar.JarFile::hasClasspathAttribute @ 78 (197 bytes)
3 java.lang.String::hashCode (60 bytes)
4 java.lang.String::indexOf (151 bytes)
5 java.util.Properties$LineReader::readLine (452 bytes)
6 java.lang.Object::java.lang.String::indexOf (166 bytes)
8 java.lang.String::equals (88 bytes)
让我知道哪些方法是编译的,未编译的,标记为僵尸等等.是否有监控编译这些方法的代码缓存的用法?当编译器代码缓存已满时,我看到一条消息,上面写着:“我已经满了,没有更多的编译对你……”,但似乎这样的事情似乎是一个滞后指示我们遇到了问题.我知道如何打印代码缓存的最大大小,我正在寻找的是一种方式来查看它是如何填充的.
最佳答案
原文地址:https://www.jb51.cc/java/437637.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。