防止缓存中的多个直读

时间:2015-12-04 21:16:24

标签: c# caching

我们有一个缓存类,允许读取伪代码在

之下
GetItemFromCache()

if (GetItemFromCache != true)
{
    ReadThrough();
}

如果多个呼叫同时使用相同的密钥到达缓存,我可以执行多个ReadThrough,这可能很昂贵(跨网络服务之旅)。我希望能够阻止读取,只允许单次读取。

我认为只要锁对缓存键是唯一的,就可以在读取周围添加锁定。我可以通过包含Dictionary的字典来处理。我不是100%确信这是解决问题的最佳解决方案,或者其他什么是更好的主意。

0 个答案:

没有答案