java循环GC在地图中工作吗?
我有一个User
对象,它强烈地指向Data
对象
如果我创建一个带有弱键的Map<Data, User>
(用番石榴MapMaker
),这样的键只有在其他地方没有引用时才会被删除。然而,它总是被它映射到的用户对象引用,而只有当数据键被移除时,它才会从映射中移除,也就是说,永远不会,除非GC的循环引用检测在穿越映射时也起作用(我希望你理解我的意思:P)
如果User
s+Data
不再在应用程序的其他地方使用,它们会被垃圾收集吗?还是我也需要指定弱值
共 (0) 个答案