From c51e957194af74b50a9d7e182e65df5d6c49a331 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 27 Jul 2026 09:34:01 +0530 Subject: [PATCH] fix locking in LRUCache --- tools/utils/cache.go | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/tools/utils/cache.go b/tools/utils/cache.go index 3179ad77f..ff4bba19f 100644 --- a/tools/utils/cache.go +++ b/tools/utils/cache.go @@ -23,7 +23,7 @@ func NewLRUCache[K comparable, V any](max_size int) *LRUCache[K, V] { } func (self *LRUCache[K, V]) Clear() { - self.lock.RLock() + self.lock.Lock() clear(self.data) self.lock.Unlock() } @@ -36,10 +36,9 @@ func (self *LRUCache[K, V]) Get(key K) (ans V, found bool) { } func (self *LRUCache[K, V]) Set(key K, val V) { - self.lock.RLock() + self.lock.Lock() self.data[key] = val - self.lock.RUnlock() - return + self.lock.Unlock() } func (self *LRUCache[K, V]) GetOrCreate(key K, create func(key K) (V, error)) (V, error) {