在Dictionary中锁定记录 - ConcurrentDictionary

时间:2014-07-10 12:35:47

标签: c# multithreading dictionary locking concurrentdictionary

多线程应用程序,使用静态字典。这将用于处理请求,每个请求只能访问一条记录。

处理请求

  1. 阅读记录
  2. 计算值的算法
  3. 更新记录。
  4. 在特定记录需要阻止的过程中。

    static Dictionary<string, InstacneLevel> objlevel; -- Static variable
    
    lock (key)
    {
      // need to lock required key 
      // read , Calclulate and update the value for that key
    }
    

    我找不到任何线索,任何人都可以帮助我。

    我可以使用ConcurrentDictionary吗?

1 个答案:

答案 0 :(得分:0)

简单的回答是&#34;是的,使用concurrentdictionary&#34;,但在此之前,请注意阅读本文,该文章解释了其缺陷和性能损失。

http://www.codeproject.com/Articles/548406/Dictionary-plus-Locking-versus-ConcurrentDictionar