在事务引擎中使用了一个核心类。我进行了大量并发事务的测试,这导致了致命的堆栈溢出异常。我想知道是否有任何方法可以测量可用的堆栈内存量,以避免异常。
我正在研究一种动态的方法,因为设置并发事务数量的硬限制并不理想。
答案 0 :(得分:2)
尝试Java VisualVM。它来自Oracle,并包含在JDK中。你可以在这里找到它:
${JDK}/bin/jvisualvm.exe
通过此可以观察到您想要了解的有关Java应用程序性能的任何内容。
Here's如果你需要它的快速教程,虽然它实际上并不需要太多的解释。
答案 1 :(得分:1)
您可以使用-Xss
参数设置Java程序的堆栈大小(或"-XX:ThreadStackSize
参见Java HotSpot VM Options)。
但是,一旦设置, Java堆栈大小就无法动态更改。