【问题标题】:Log Garbage Collection in Java WebstartJava Webstart 中的日志垃圾收集
【发布时间】:2011-08-01 08:37:00
【问题描述】:

我想在我的 Java Webstart 应用程序中记录 GC。

我已经尝试过该选项

<j2se version="1.5+" java-vm-args="-verbose:gc -Xloggc:gc.log -XX:+PrintGCTimeStamps -XX:+PrintGCDetails" />

在 jnlp 文件中,但在 java 控制台和指定文件 gc.log 中都没有出现任何日志记录。

我也尝试了绝对文件-/路径名。

我将 Xmx 缩小到一定大小,GC 肯定会在短时间内发生。

【问题讨论】:

  • 你试过手动拨打System.gc()吗?
  • 是的,我做到了。不幸的是,在 gc.log 或 java 控制台中没有结果。
  • 调用 System.gc() 不会输出任何日志。它只会导致一次完整的 GC。

标签: java garbage-collection jnlp java-web-start


【解决方案1】:

我在 jnlp 规范中注意到了这条评论:

“JNLP 客户端可能会尊重这一点 仅当它考虑每个 论证是安全的。”

所有个参数可能会被忽略,因为其中有一个无法识别。如果您指定 only -verbose:gc 并省略其他选项怎么办?

【讨论】:

    【解决方案2】:

    如果您查看参考页面: http://download.oracle.com/javase/7/docs/technotes/guides/javaws/developersguide/syntax.html#resources

    Java Web Start 似乎不支持 gclog-flag,我还没有找到在 JWS 中激活 gc-logging 的任何方法。这可能是向客户端计算机写入文件的安全问题。

    【讨论】:

      最近更新 更多