weakhashmap简单理解

时间:2023-03-09 19:10:29
weakhashmap简单理解

map中的key(注意String,和元数据作key有特殊性),gc后会被立马干掉,

key被干掉后,其对应的entry将被存入queue中

/**
* Reference queue for cleared WeakEntries
* 引用队列,用于存储已被GC清除的WeakEntries
*/
private final ReferenceQueue<Object> queue = new ReferenceQueue<>();

而value在map访问后调用expungeStaleEntries方法,expungeStaleEntries会遍历这个queue然后清理掉对应entry