在开始之前,我已经读过this,但我认为它不能回答我的问题。
我正在写一种更新字典值的方法。 我不会插入或删除任何键。
我打算这样做:
private static void Example(Dictionary<Individual, float> dict) {
var keys = dict.Keys.ToArray();
Parallel.For(0, keys.Length, i => {
var key = keys[i];
var newValue = DoHardMath(key);
dict[key] = newValue;
});
}
这是线程安全的吗? documentation不清楚。
答案 0 :(得分:2)
您的问题非常具体,但是ConcurrentDictionary
可以避免焦虑。
Docos位于: