ここ最近、JVMのGCと格闘している。 格闘と言っても、WeakHashMapな実装でキャッシュしてるオブジェクトがガンガンGCに拾われて、キャッシュとしての機能をほとんど果たしていないことで、試行錯誤しているんだけども。 ってまぁ、僕が書きたいことはWhy WeakHashMap Sucksで追及されてて、あまり書くことはないんだけども、WeakHashMapはGCとの相性とかGCの実装によってはあまり嬉しくない実装ってヤツ。 WeakReferenceをSoftReferenceにしたところで、softly reachableなのは誰がチェックするんじゃー的な意味で、あまり美味しいMap実装にできない。。。 んで、上の文章にも出てくるReferenceMapが美味しい実装らしい。 確かに、実装を見てみると何となく・・・わかるわけないか。 ref - Reference