今日、私はオーバーキャッシュ の使用法について議論したこのブログ投稿を見つけました。WeakHashMap
値ではなくキーが弱参照として格納され、参照が存在しなくなると、キーと値のペア全体がWeakHashMapから削除されるという事実に興味をそそられました。したがって、これにより次のことが発生します。
WeakHashMap map = new WeakHashMap();
SomeClass myReference1 = ....
map.put(new Long(10), myReference1);
// do some stuff, but keep the myReference1 variable around!
SomeClass myReference2 = map.get(new Long(10)); // query the cache
if (myReference2 == null) {
// this is likely to happen because the reference to the first new Long(10) object
// might have been garbage-collected at this point
}
WeakHashMap
その場合、どのシナリオがクラスを利用するのか興味がありますか?