我在使用MemoryCache時如下代碼:


測驗時默認的20秒自動清空快取
然后下面是呼叫cache 存cache的代碼:

然后有個奇怪的現象通過寫的日志看出來,前幾次快取資料正常,后面就開始快取不上資料了(這個快取是在服務端用的)
uj5u.com熱心網友回復:
清空快取后有沒有重新初始化?uj5u.com熱心網友回復:
重新初始化誰?
uj5u.com熱心網友回復:
_Cacheuj5u.com熱心網友回復:
清空快取后有沒有重新初始化?
重新初始化誰?
_Cache就是MemoryCache.Default. 是在 GlobalCache的建構式里給賦值的,然后SetSQLCache是GlobalCache的方法,在呼叫的時候肯定是實體化了GlobalCache了。
uj5u.com熱心網友回復:
清空快取后有沒有重新初始化?
Cache就是MemoryCache.Default. 是在 GlobalCache的建構式里給賦值的,然后SetSQLCache是GlobalCache的方法,在呼叫的時候肯定是實體化了GlobalCache了。
uj5u.com熱心網友回復:
我是說清空后讓它回到初始狀態,從現象看,你這個問題跟20分鐘清空應該是有關系的uj5u.com熱心網友回復:
我是說清空后讓它回到初始狀態,從現象看,你這個問題跟20分鐘清空應該是有關系的
uj5u.com熱心網友回復:
哇,過去這么久了都,不知道能不能恢復,看了樓上的問題,我猜測是應為記憶體快取存盤物件用的是淺拷貝,你可以在快取物件時候采用json序列化,獲取的時候反序列化,并且這個快取會有并發問題,當初我是用trim(100)清空,在插入來重繪快取導致有幾次取到的資料為空,因此在更新快取的時候使用并發鎖,獲取直接覆寫
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/97745.html
標籤:C#
上一篇:Cisco快捷鍵
下一篇:實作label在表單內的移動
