软引用对象和强引用互相引用会导致互锁吗?

问题描述 投票:0回答:1

对对象的强引用以及该对象对

this
的软引用。

我的程序有一个产品销售记录列表,产品本身引用了订单对象。 程序有一个汇总订单详细信息的功能,它使用订单的产品销售额来计算一些东西。

我最重要的问题是,当我将产品销售记录列表设置为空时,会导致YGC不清除它们吗?

java
1个回答
0
投票

如果您使用 spring 框架,使用基于 setter 的依赖注入而不是基于构造函数是修复循环依赖/循环引用的另一种方法。 对于休眠实体映射,获取类型“lazy”可能会有所帮助,而不是获取“eager”,因此数据将仅按需加载。 在大多数情况下,循环引用是不可避免的,但除非绝对必要,否则请尽量避免导致循环引用的映射实体

© www.soinside.com 2019 - 2024. All rights reserved.