265
return
266
}
267
>
entry := elt.Value.(*entryImpl)
lru.go
268
>
entry.refCount--
269
>
if entry.refCount == 0 {
270
c.pinnedSize -= entry.Size()
271
metrics.CachePinnedUsage.With(c.metricsHandler).Record(float64(c.pinnedSize))
272
}
273
// Entry size might have changed. Recalculate size and evict entries if necessary.
274
>
newEntrySize := getSize(entry.value)
lru.go
275
>
c.currSize = c.calculateNewCacheSize(newEntrySize, entry.Size())
276
>
entry.size = newEntrySize
277
>
if c.currSize > c.maxSize {
278
c.tryEvictUntilCacheSizeUnderLimit()
279
}
280
>
metrics.CacheUsage.With(c.metricsHandler).Record(float64(c.currSize))
lru.go
281
}
282