如何在Java中测量堆栈内存



事务引擎中使用一个核心类。我对大量并发事务进行了测试,这导致了致命的堆栈溢出异常。我想知道是否有任何方法可以测量有多少堆栈内存可用,以避免出现异常。

我正在研究一种动态的方法,因为对并发事务的数量设置硬性限制并不理想。

试试Java VisualVM。它来自Oracle,并包含在JDK中。你可以在这里找到:

${JDK}/bin/jvisualvm.exe

您想了解的关于Java应用程序性能的几乎所有信息都可以通过这个观察到。

如果你需要的话,这里有一个快速教程,尽管它实际上不需要太多解释。

您可以使用-Xss参数设置Java程序的堆栈大小(或"-XX:ThreadStackSize,请参阅Java HotSpot VM选项)。

但是,一旦设置好,就不能动态更改Java堆栈大小

最新更新