我有以下并发字典:
public class StorageBlock
{
...
...
int BlockIndex {get;}
}
ConcurrentDictionary<string, StorageBlock> _blocks = new ConcurrentDictionary<string, StorageBlock>();
我的应用程序是多线程的,其中不同的线程可以更新_blocks
字典。我有一个以下功能,可对_blocks
进行快照:
IDictionary<string, int> StorageSnapshot()
{
var dictionary = _blocks.ToDictionary(kvp => kvp.Key, kvp => kvp.Value.BlockIndex);
return dictionary;
}
我的问题是:这是从并发字典中获取字典快照的正确方法吗?