gpt4 book ai didi

c# - 具有固定键的字典上的多线程

转载 作者:太空狗 更新时间:2023-10-30 00:25:05 25 4
gpt4 key购买 nike

我有一个包含固定键集合的字典,它是我在程序开始时创建的。后来,我有一些线程用值更新字典。

  • 一旦线程开始,就不会添加或删除任何对。
  • 每个线程都有自己的 key 。意思是,只有一个线程会访问某个键
  • 线程可能更新值

问题是,我应该锁定字典吗?

更新:

谢谢大家的回答,

当我问这个问题时,我试图简化情况,只是为了理解字典的行为。

为了清楚起见,这里是完整版:我有一本包含约 3000 个条目(固定键)的字典,并且我有多个线程访问该键(共享资源),但我知道一个事实,即一次只有一个线程访问一个键条目。

所以,我应该锁定词典吗?并且 - 当您现在拥有完整版本时,字典是否是正确的选择?

谢谢!

最佳答案

来自 MSDN

只要不修改集合,字典可以同时支持多个读者。

要允许集合被多个线程访问以进行读写,您必须实现自己的同步。

有关线程安全的替代方案,请参阅 ConcurrentDictionary<TKey, TValue>.

关于c# - 具有固定键的字典上的多线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19378230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com