我有这样定义的四级数据结构:
Dictionary<Type1, Dictionary<Type2, Dictionary<Type3, List<Type4>>>>
整个事情都封装在一个类中,该类也维护线程安全。目前它只是在读取/操作数据时锁定整个集合(读取比写入更常见的数量级)。
我正在考虑替换Dictionary
withConcurrentDictionary
和List
with ConcurrentBag
(它的项目不必订购)。
如果我这样做,我可以消除锁并确保并发集合能够正确完成它们的工作吗?