我有一个在浏览器上运行的应用程序(如果它很重要)在尚未激活的窗口上(如果有的话)。我已经将JVM控制面板中的环境变量设置为-Xms5m -Xmx5m(我也完成了-Xms16m和-Xmx16m)。JVM选项-Xms和-Xmx被忽略
当我运行应用程序并使用jconsole监视进程的pid时,它告诉我我使用的显着多于我的set堆,而不是抛出堆空间错误(我特意试图获取此错误)。根据jconsole它使用15-20Mb。我重新启动了电脑,并且已将所有浏览器设置为关闭。
有谁知道为什么参数被忽略。
让我知道是否有任何信息丢失。
只是说明一下,jconsole特意说我的堆内存使用情况是20mb。我很清楚,由于加载了JVM,库,堆栈等,可能会使用更多的内存。我遇到的问题是堆应该超过我指定的堆大小。
-Xmx16m选项没有在Java VisualVm中列出,即使它是在环境变量中设置的唯一选项(我甚至删除了-Xms16m以确保Java VisualVm正在更新。即使-Xmx16m没有)。有谁知道为什么这可能是这种情况?
我已经尝试了Java RE版本6从27到31,并且它们都缺少Java VisualVm选项中的Xmx选项,并且它们都只有-Xms16m。
您是如何传递这些值的? – 2012-08-03 18:28:55
我通过打开控制面板,搜索java并选择它,然后转到java选项卡并单击查看按钮,最后设置运行时参数(然后确定,应用,关闭浏览器,重新启动计算机等)来传递值。 。 – 2012-08-03 18:34:17
http://stackoverflow.com/questions/6450132/java-seems-to-ignore-xms-and-xmx-options – kgautron 2012-08-03 18:41:52