在 JAVA 中以编程方式监视 JVM 的堆栈区域?

Monitoring stack area of JVM programmatically in JAVA?

This 博客简要解释了 JVM 内存结构,我假设我的问题结构相同。现在我的问题如下。

  1. 由于线程使用内存的堆栈和寄存器区域,如何通过编程单独监控堆栈和寄存器部分内存而不是使用visualvm之类的工具?

您可以查看 VisualVM 它与标准 jdk 安装捆绑在一起。

来自主页

监控应用程序性能和内存消耗。 VisualVM 监控应用程序 CPU 使用情况、GC activity、堆和永久代内存、加载的 类 和 运行 线程数。您可以轻松检测可疑的内存消耗并采取措施 - 在应用程序中调用垃圾回收或进行堆转储并浏览应用程序堆的内容。