4

有没有办法知道每个 Eclipse 插件分别消耗了多少内存?

4

4 回答 4

7

进行堆转储并使用例如Eclipse Memory Analyzer对其进行分析。

有关详细信息,请参阅使用内存分析器分析 Equinox 捆绑包依赖关系

于 2009-06-12T15:06:01.180 回答
1

如果这是可能的,我会感到非常惊讶,因为您必须有一种明确的方式来确定哪个插件“拥有”堆上的特定对象。

于 2009-06-12T09:58:27.783 回答
1

Eclipse 3.1 有一个内置的内存监视器(又名堆状态)插件,它是 org.eclipse.ui.workbench_3.1.0.jar 的一部分 您必须在调试模式下运行 Eclipse 才能看到右下角的监视器。

还要检查 FreeMem 插件:FreeMem 插件

在 Eclipse 中,您可以卸载-->测量内存-->安装-->重复循环

这样您就可以了解每个插件的任何/所有内存使用情况。祝你这项任务好运。我很想看看结果,因为我看到一些插件比其他插件使用更多的内存。

于 2009-06-12T16:36:51.757 回答
0

我不知道任何通用答案,但也许可以获得某些插件的内存使用情况:因为框架会按需加载插件,如果您可以在插件激活之前和之后读取堆大小,它可能会给出一个想法。

要检查加载了哪些插件,可以在 OSGi 控制台中使用“ss”命令。

于 2009-06-12T15:02:28.287 回答