C# 有没有办法将对象包装为ConcurrentObject?
我知道如何很好地使用C# 有没有办法将对象包装为ConcurrentObject?,c#,object,concurrency,.net-4.5,C#,Object,Concurrency,.net 4.5,我知道如何很好地使用GetOrAdd()方法来利用ConcurrentDictionary类。对于单个对象是否有类似的类?我不希望为了获得并发性而为单个对象创建字典 现在,我正在做以下工作: return _singledict.GetOrAdd(_sync, CreateSingleItem); 听起来,如果已经构建了一个现有对象,那么您希望有一些方法来访问它,如果还没有构建,那么您希望有一些方法来构建一个新的对象,并使用适当的工具来防止构建多个对象 这正是懒惰的原因。注意,GetOrAd
GetOrAdd()
方法来利用ConcurrentDictionary
类。对于单个对象是否有类似的类?我不希望为了获得并发性而为单个对象创建字典
现在,我正在做以下工作:
return _singledict.GetOrAdd(_sync, CreateSingleItem);
听起来,如果已经构建了一个现有对象,那么您希望有一些方法来访问它,如果还没有构建,那么您希望有一些方法来构建一个新的对象,并使用适当的工具来防止构建多个对象
这正是懒惰的原因。注意,GetOrAdd可能会为同一个键多次调用工厂。除了一个结果之外,所有结果都将被丢弃。您真的需要
GetOrAdd
的效果,还是每次都只想返回一个新的KeyValuePair
?