批量操作如何影响 ConcurrentDictionary?

How do bulk actions affect a ConcurrentDictionary?

我对并发词典如何锁定它们的资源感到困惑。

例如,如果我 运行 一个方法迭代字典中的每个项目并在一个线程中编辑它的值,然后我尝试从另一个线程读取键的值:

第二个线程会访问词典的快照吗? 如果没有,如果该条目已经更新,它是否会访问更新的条目?

并发字典是线程安全的,可以被多个线程同时访问。字典上的读操作以无锁方式执行,而写操作受锁保护。有关实施详情,请查看 ConcurrentDictionary.

第二个线程将访问更新后的字典。 ConcurrentDictionary 所做的只是提供对任何添加或删除操作的集合的锁定。读取操作不受影响。

Source