Pet*_*ter 10 .net c# concurrency multithreading concurrentdictionary
System.Collections.Concurrent.ConcurrentDictionary的MSDN文档说:
线程安全
所有公共成员和受保护成员
ConcurrentDictionary<TKey,?TValue>都是线程安全的,可以从多个线程同时使用.然而,构件通过接口中的一个访问的ConcurrentDictionary<TKey,?TValue>器具,包括扩展方法,不保证线程安全,并且可能需要由呼叫者进行同步.
(强调我的)
这似乎是自相矛盾的."所有成员都是线程安全的.但成员[有时]不是线程安全的."
我确实理解扩展方法当然不能保证是线程安全的.
但是"通过其中一个接口访问"是什么意思呢?是TryGetValue(IDictionary<TKey, TValue>接口的成员)线程安全吗?