java - 确保 Java 对象被销毁

标签 java garbage-collection

情况有点复杂。 我有一个 Web 容器,它使用 RMI 控制另一台机器上的另一个应用程序。 RMI server端有一个HashMap,包含了web app端需要控制的用户信息。

当用户从 web 应用程序端注销时,会有一个 RMI 调用 RMI 服务器,告诉服务器注销用户。然后我只删除 HashMap 中的项目。

现在我意识到 GC 不会收集我在 HashMap 中删除的对象,因为可能其他线程仍在使用它并且该对象还包含一些子对象,例如用户联系人。

我真的不知道如何销毁整个对象,包括它的属性和属性的属性。

最佳答案

那么,您必须删除所有 hard references到您的对象以使其符合垃圾收集条件。没有别的出路。你的案例中的其他线程是什么?

关于java - 确保 Java 对象被销毁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9632371/

相关文章:

javascript - "-"在 chrome 内存 devtool 的距离字段中意味着什么

java - 使用 logrotate 的垃圾收集器日志 (loggc) 文件轮换无法正常工作

java - FloatingActionButton Sub 无法调用 Codename One 中的另一个表单

java - 具有给定长度单元测试的随机字符串

java - 速度工具 XmlTool

java - 如何从 parquet 文件读取和写入自定义类

c# - 垃圾收集器的替代品是什么?

java - 为了垃圾回收而避免创建对象是否仍然有意义?

java - 在同步方法中发布后,普通方法中的非不可变类可见性

pointers - 标记和清除垃圾收集中的指针反转会给您带来什么?