2
A
回答
3
这是经由JVMTI possivble并且通常由堆分析器完成的。但是,它不能从Java内部完成。
1
一种方法是保留一个弱引用的列表,以列出所有请求订阅的对象。只要对象订阅了另一个对象,就会在列表中添加对另一个对象的弱引用。每当对象取消订阅,请删除弱引用。通过检查列表是否为空来验证所有订阅已被删除。
如有必要,对于支持多种类型订阅的对象,这可以推广。
如果订阅没有附加到列表中,则可能会发生误报。
1
这是不可能的从JVM中,但你可以通过使用jmap
从JDK,那么你可以使用jhat
解析转储文件,然后单击通至活着被带到转储时引用创建一个堆转储。
结帐我这篇文章弗兰克kieviet,其中JMAP和与jHat用于标识在Tomcat中PermGen的泄漏: http://blogs.oracle.com/fkieviet/entry/how_to_fix_the_dreaded
和JMAP和与jHat网站:
http://download.oracle.com/javase/6/docs/technotes/tools/share/jhat.html http://download.oracle.com/javase/6/docs/technotes/tools/share/jmap.html
相关问题
- 1. 如何存储对一个类的所有对象的引用?
- 2. 取消对对象的所有引用
- 3. Python:有没有办法让所有对象的引用都引用另一个对象?
- 4. 在Python中删除一个对象及其对它的所有引用?
- 5. 从对象数组创建一个对象引用父对象
- 6. 所有wcf客户的一个对象
- 7. 返回一个对象VS引用返回一个对象
- 8. 填充JavaScript对象与另一个对象的所有元素
- 9. 替换对shared_ptr中的对象的所有引用<T>
- 10. 一个对象给另一个对象,不仅仅是对它的引用
- 11. 查找所有对Lua中对象的引用
- 12. 查找对python中所有对象的引用
- 13. C#NHibernate - 删除所有对删除对象的引用
- 14. 如何从ArrayAdapter中删除没有该对象引用但有另一个一致对象的对象?
- 15. 拥有另一个对象的对象
- 16. 注册一个引用System.Web的SQL对象的DLL对象CLR
- 17. 有一个对属性的引用,有没有办法获取对包含对象的引用?
- 18. 如果一个对象失败所有对象回滚
- 19. 在所有其他对象前面绘制一个3D对象
- 20. NSMutableArray:将所有对象推向一个索引?
- 21. 对象B和对象B对象的引用没有指针
- 22. 垃圾回收器:删除对一个引用另一个对象的对象的引用
- 23. Android的一个空对象引用
- 24. $这是一个对象的引用?
- 25. 返回一个对象的const引用
- 26. Java - 引用一个变量的对象
- 27. 传递一个对象的对象:引用或值?
- 28. 的ConnectionString:对象引用未设置为一个对象实例
- 29. php - 一个对象可以引用父对象的方法吗?
- 30. 填充另一个对象引用的对象
我需要这个在JUnit测试中不改变目标代码。但是,正如我所看到的,它无法完成。谢谢 – liborw 2010-10-21 14:07:53