Netbeans 内存管理

发布于 2024-07-26 08:58:57 字数 139 浏览 7 评论 0原文

我有一些 Java 代码在运行一段时间后抛出内存不足异常。 我研究了 netbeans 分析器,当我执行一项特定操作时,幸存一代指标会上升。 然而,当我重置程序状态(而不是杀死它)时,幸存世代指标不会减少。

为什么幸存世代指标没有减少?

I have some Java code that is throwing out of memory exceptions after running for a while. I've investigated the netbeans profiler, and when I do one specific operation the Surviving Generations Metric goes up. However when I reset the program status (not kill it), the Surviving Generations Metric does not decrease.

Why is the surviving generations metric not decreasing?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

☆獨立☆ 2024-08-02 08:58:57

在1.6下运行它,并使用Java VisualVM(jvisualvm)。

选择您的进程,右键单击并选择堆转储。

让它运行一段时间并进行另一个堆转储。

然后使用文件> 比较内存快照以比较两个转储。

Run it under 1.6, and use the Java VisualVM (jvisualvm).

Select your process, right click and choose Heap Dump.

Let it run a while and take another heap dump.

Then use File > Compare Memory Snapshots to compare the two dumps.

绳情 2024-08-02 08:58:57

我在这里遇到同样的问题,但仅在我分析 JUnit 测试的情况下 - 幸存的世代呈线性增长。 当我在 main 方法中运行相同的代码时,代码的行为符合预期。

I have the same problem here, but only in the case I profile a JUnit test - surviving generations are growing linearly. When I run the same code in main method, the code behaves as expected.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文