当前位置: 首页 > 面试题库 >

从Windows命令行运行时如何请求JVM垃圾回收(不是从代码)

程祺
2023-03-14
问题内容

我如何从JAR(使用Windows BAT)启动程序的外部请求Java垃圾收集?

  • 从Java代码中,我可以做到 System.gc()
  • 运行JNLP发行版时,可以从“控制面板” / Java / …中打开此“ Java控制台”,并且此Java控制台提供了手动垃圾收集。

但是…当我从命令行/ bat运行jar时,java控制台似乎没有打开。短暂搜索无法找到帮助,也许有人在这里?


问题答案:

您可以使用jconsole连接到本地运行的JVM-
这在GUI上提供了“ Perform GC”按钮。

启动Java进程时,需要指定 -Dcom.sun.management.jmxremote



 类似资料:
  • 问题内容: 在启动时,似乎我的node.js应用程序使用了大约200MB的内存。如果我搁置一段时间,它会缩小到9MB左右。 是否可以从应用程序内执行以下操作: 检查应用程序正在使用多少内存? 请求垃圾收集器运行? 我问的原因是,我从磁盘加载了一些文件,这些文件是临时处理的。这可能导致内存使用量激增。但是我不希望在GC运行之前加载更多文件,否则存在内存不足的风险。 有什么建议 ? 问题答案: 如果使

  • 主要内容:垃圾回收算法,1、垃圾回收器的分类,2、串行垃圾回收器,3、吞吐量优先,4、响应时间优先,5、G1(Garbage First,jdk9默认),6、Full GC垃圾回收算法 1.标记清除 2.标记复制 3.标记整理 内存效率:复制算法>标记清除算法>标记压缩算法(时间复杂度) 内存整齐度:复制算法=标记清除算法>标记压缩算法 内存利用率:复制算法<标记清除算法=标记压缩算法 年轻代: 存活率低 复制算法 老年代: 区域大,存活率高 标记清除(内存碎片不是太多)+标记压缩共同实现 1、

  • 主要内容:垃圾回收算法,1、垃圾回收器的分类,2、串行垃圾回收器,3、吞吐量优先,4、响应时间优先,5、G1(Garbage First,jdk9默认),6、Full GC垃圾回收算法 1.标记清除 2.标记复制 3.标记整理 内存效率:复制算法>标记清除算法>标记压缩算法(时间复杂度) 内存整齐度:复制算法=标记清除算法>标记压缩算法 内存利用率:复制算法<标记清除算法=标记压缩算法 年轻代: 存活率低 复制算法 老年代: 区域大,存活率高 标记清除(内存碎片不是太多)+标记压缩共同实现 1、

  • 我有一个Springboot Maven项目,它使用@JmsListener从队列中读取消息。 如果没有事件进来,堆内存会慢慢增加。当消息传来时,堆内存会快速增加。但是堆内存永远不会下降(查看下图)。 如果我添加系统。gc()在receiver方法的末尾,垃圾收集器正在按预期完成其工作。但这绝对不是好的做法。 如何确保gc在适当的时间运行。任何帮助都将不胜感激! 堆内存使用率 接收方法

  • 问题内容: npm 已安装并正在IntelliJ IDEA 15中被积极使用 我的目标是在IntelliJ中为我的TypeScript源代码生成类型,但是我想学习使用Windows命令行,因此我可以显式指定命令行选项,以了解每个选项的作用。我对Googling所发现的与设置和使用它有关的各种花絮感到困惑…我敢肯定,我缺少一些非常基本的知识,那些博客或回答问题的人都认为这是常识。 。 这是我尝试过的

  • 我遵循以下指示https://code.visualstudio.com/docs/setup/mac但我没有成功。这就是我进去时发生的事情 我得到了以下信息: 我还查找了以下问题:如何在OSX上从命令行打开Visual Studio代码?,这没用。 我在VSCode中只有一个终端选项,zsh。