| Key | entry 指针 (p) | 指向的值 | 状态 |
|---|---|---|---|
| 暂无数据 | |||
| Key | entry 指针 (共享同一 entry) | 指向的值 | |
|---|---|---|---|
| dirty 为 nil (未创建) | |||
type Map struct {
mu Mutex
read atomic.Pointer[readOnly] // 读写分离:只读 Map
dirty map[any]*entry // 保护 Map,包含新 key
misses int // 未命中 read 的次数
}
type readOnly struct {
m map[any]*entry
amended bool // 若 dirty 包含 read 没有的 key 则为 true
}
type entry struct {
p atomic.Pointer[any] // 三状态: valid / nil / expunged
}