我有一个带有骨架(元数据)和大型数据对象的数据模型。我想将骨架保存在内存中并保存对数据对象的弱引用。我了解如何使用纯 Java 实现这一点,如何创建 WeakHashMap 并进行清理等。但我想知道在数据对象被 GC 后恢复数据对象的最佳方法是什么?
我是否应该向我的地图添加一个技术密钥,将其分配给数据对象中的一个字段,以便我可以再次找到它?或者我应该调用 db.ext().getId() 并使用此 ID 作为技术密钥?如果是这样,加载父级时如何获取这些键?你有什么建议?
我有一个带有骨架(元数据)和大型数据对象的数据模型。我想将骨架保存在内存中并保存对数据对象的弱引用。我了解如何使用纯 Java 实现这一点,如何创建 WeakHashMap 并进行清理等。但我想知道在数据对象被 GC 后恢复数据对象的最佳方法是什么?
我是否应该向我的地图添加一个技术密钥,将其分配给数据对象中的一个字段,以便我可以再次找到它?或者我应该调用 db.ext().getId() 并使用此 ID 作为技术密钥?如果是这样,加载父级时如何获取这些键?你有什么建议?