所以我在远程盒子上看着一个带有jmap的堆,我想强制垃圾收集.如果不突然进入jvisualvm或jconsole和朋友,你怎么做?
我知道你不应该在强制垃圾收集的实践中 - 你应该弄清楚为什么堆很大/正在增长.
我也意识到System.GC()实际上并没有强制进行垃圾收集 - 它只是告诉GC你希望它发生.
话虽如此,有办法轻松做到这一点吗?我失踪了一些命令行应用程序?
是否可以从命令行运行.NET垃圾收集器,例如,无需编写代码?
编辑:
当被问到这个问题时,我的意思就是这里要求的Java垃圾收集器:
从Windows命令行运行时如何请求JVM垃圾回收(而不是代码)
因此,如果有一种方法可以在JVM中执行此操作,请查看它在.NET中不存在的原因
我需要一种能够从ubuntu上的linux控制台脚本触发完整GC的方法.我知道这是非常糟糕的做法,但没有太多的细节,这使我的服务器保持运行,这只是在我修复实际问题的1或2天,所以我不必在夜间醒来并执行通过jconsole或jvisualvm手动GC.
或者,我必须制作一个鼠标脚本,每3-4小时左右点击一次按钮,这更糟糕.
请帮忙.