gpt4 book ai didi

java - 从 Java 中对象的阻塞垃圾回收中排除引用

转载 作者:行者123 更新时间:2023-12-02 05:04:22 26 4
gpt4 key购买 nike

我有一个 Java 列表,它允许在多个地方使用同一个对象。 (表行,因此它们不会在内存中多次缓存)。

有没有办法告诉垃圾收集器,他可以删除仅此列表引用的对象,而不能删除其他地方的对象?

或者是否有更好的设计来共享这样的对象?

最佳答案

Is there a way to tell the garbage collector, that he is allowed to remove object that are only referenced by this List, and nowhere else?

有点。您想将其设为 List<WeakReference<T>>或类似的东西。请参阅 WeakReference 的文档和SoftReference了解它们各自抑制收集程度的详细信息。

现在,当您使用该列表的元素时,您需要检查该值是否在 WeakReference 范围内。或 SoftReference 已被收集,因此这不是一个透明的更改 - 但我认为这就是您正在寻找的。

关于java - 从 Java 中对象的阻塞垃圾回收中排除引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27928634/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com