首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从堆中删除java对象?

如何从堆中删除java对象?
EN

Stack Overflow用户
提问于 2014-04-28 14:31:15
回答 9查看 7.3K关注 0票数 2

在java中你有一个大对象。它有4到5个参考文献。你并不了解所有的参考资料。在删除时,您只知道一个引用,并且您希望完全删除该对象。如何做到这一点呢?另外,如果你想知道其他的参考资料,那么最好的方法是什么。

EN

回答 9

Stack Overflow用户

发布于 2014-04-28 14:33:12

它不在我们手中..你可以从你那端把它作废..

代码语言:javascript
运行
复制
Object a = new Object();
a = null; // after that, if there is no live thread which is accessing members,it will be deleted by garbage collector
票数 4
EN

Stack Overflow用户

发布于 2014-04-28 14:34:32

您可以尝试Finalize()System.runFinalization(),但坦率地说,如果仍然有指向对象的引用,那么我认为GC将忽略您的请求。

票数 1
EN

Stack Overflow用户

发布于 2014-04-28 14:39:27

这在Java中是不可能的。

如果有引用对象强引用,则不能强制JVM对该对象进行GC。它根本不能保证程序会工作。

如果所有其他引用的代码都在您的控件中,请考虑将它们更改为使用WeakReferenceSoftReference

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

https://stackoverflow.com/questions/23334018

复制
相关文章

相似问题

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