我正在寻找与
WeakHashMap<K, V>
类,除了它将多个键映射到一个值,所以它真的更像
WeakHashMap<K1, K2, V>
WeakHashMap<K1, K2, K3, V>
etc.
您get
和set
条目的方式就像数据库中的多列主键:您使用多个键放置项目,例如(K1, K2)
,并且要取出该项目,您需要提供您用来放入它的所有get
相同的键。鉴于这些&set
语义,GC 语义将是:一个条目将在不再可达时被 GC,这意味着它的任何键都不再可达。
以前有没有其他人需要这样的东西?您将如何处理这样的要求?像在非弱 HashMap 中那样存储元组作为键是行不通的(元组几乎立即被 GC,没有人指向它)。
如果在我很乐意使用它之前已经制作了这样的东西,但只是想想想我将如何用 WeakReferences 和普通的 hashmap 构建这样的东西,然后我想出了一个空白。