KeyValuePairs があり、新しい値を ConcurrentDictonary に追加したいと考えています。キーが含まれていない場合は、追加します。しかし、より速い/より良いものは何ですか:
これ:
dict.AddOrUpdate(pair.Key, pair.Value, (ok, ov) => pair.Value);
またはこれ:
if (dict.ContainsKey(pair.Key))
{
dict[pair.Key] = pair.Value;
}
else
{
dict.TryAdd(pair.Key, pair.Value);
}
AddOrUpdate が、私が望んでいない/必要のない追加の作業を行い、Lambda も実行する必要があるため、時間がかかることを懸念しています。
これらの 2 つの方法のうち、どちらが高速ですか? または、さらに高速なメソッドはありますか?