Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java jvm字符串池实习生中有多少字符串_Java_String_Profiling - Fatal编程技术网

Java jvm字符串池实习生中有多少字符串

Java jvm字符串池实习生中有多少字符串,java,string,profiling,Java,String,Profiling,我正在分析一个应用程序,使用intern输入字符串真的很有帮助。 我想找到一个用于对象池的好数字,这样我就不会有性能损失。 我怎么知道实习生池中插入了多少字符串 我正在运行一些生产跟踪,我无法真正计算输入 JVM是否为此提供了api 从JDK7开始,您可以使用-XX:+PrintStringTableStatisticsJVM标志来打印有关字符串表大小的信息,例如存储桶的数量和存储桶的大小 您还可以通过调用命令jmap-heap*process\u id*来使用jmap工具,该命令将在末尾显示插

我正在分析一个应用程序,使用intern输入字符串真的很有帮助。 我想找到一个用于对象池的好数字,这样我就不会有性能损失。 我怎么知道实习生池中插入了多少字符串

我正在运行一些生产跟踪,我无法真正计算输入


JVM是否为此提供了api

从JDK7开始,您可以使用
-XX:+PrintStringTableStatistics
JVM标志来打印有关字符串表大小的信息,例如存储桶的数量和存储桶的大小

您还可以通过调用命令
jmap-heap*process\u id*
来使用
jmap
工具,该命令将在末尾显示插入的字符串数和总大小(还需要JDK7+)


查看更多详细信息。

这会将统计数据打印一次到标准输出,我希望以某种方式对此进行监控。由于它释放了未使用的字符串,我希望看到在应用程序生命周期中占用它的最大字符串数