首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >提高com4j的性能

提高com4j的性能
EN

Stack Overflow用户
提问于 2012-09-14 12:29:54
回答 1查看 272关注 0票数 0

我正在使用它连接到HP应用程序的质量中心。我运行了一个很大的应用程序,内存增加了很多,但它并没有减少。它使应用程序崩溃。有人有什么解决方案吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2012-09-15 12:21:36

如果你的内存快用完了,你首先要做的就是找出是什么在使用内存,然后看看它是否应该仍然存在,如果不是,为什么它仍然存在。

一个很好的起点是使用this blog上解释的jmap获取一个堆转储。堆转储是当前内存中所有内容的转储,因此要为文件做好准备,该文件至少与分配给VM的内存量一样大。

获得堆转储后,就可以使用Eclipse Memory Analyzer对其进行分析。这将能够告诉你内存的最大用法是什么,并沿着阻止事物被垃圾收集的引用链上下移动。

现在这些都是纯java的东西,所以如果问题出在com4j的本机组件或com对象本身,那么这不会有什么帮助,但它将允许您从您的调查中排除Java端。如果是com组件泄漏了内存,那么试着在没有java端的情况下运行它,看看是否可以单独地重现内存泄漏。在这一点上,您需要使用与我刚才描述的技术相当的Native / COM,但恐怕我对此一无所知。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12418142

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档