c# - 哈希表到 Dictionary<> syncroot 。

标签 c# generics dictionary hashtable

哈希表具有同步根属性,但通用字典没有。如果我有这样做的代码:

lock (hashtable.Syncroot)
{
....
}

如果我要删除哈希表并更改为通用词典,我该如何复制它?

最佳答案

如果您严格要求兼容性,那么 Bryan 是正确的。这是在字典之上维护当前语义的最佳方式。

虽然扩展了它。 SyncRoot 属性没有直接添加到通用字典的原因是它是一种危险的同步方式。它只比非常危险且容易出现死锁的“lock(this)”好一点点。这里有几个链接说明了为什么这是不好的。

关于c# - 哈希表到 Dictionary<> syncroot 。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/327654/

相关文章:

java - Java 中的通用链表克隆

python - 提取列表,同时测试提取条目的条件

Python:如何获取字典中特定组的最大值?

c# - 如何获取当前用户的临时文件夹

重写与隐藏基类方法时的 C# 作用域差异

java - 通用编程有必要吗?

java - map 对象同步

c# - 为什么Xamarin.Form CollectionView在WPF平台中不显示绑定(bind)数据?

c# - Entity Framework 核心: many-to-many relationship with the same object

c# - 通用继承和委托(delegate)