您的位置:首页 > 房产 > 家装 > C# 浅谈线程安全的字典集合ConcurrentDictionary

C# 浅谈线程安全的字典集合ConcurrentDictionary

2025/1/9 3:57:44 来源:https://blog.csdn.net/a876106354/article/details/140369906  浏览:    关键词:C# 浅谈线程安全的字典集合ConcurrentDictionary

ConcurrentDictionary 是 C# 中的一个线程安全的字典集合 TryAdd(TKey key, TValue value): 尝试添加一个键值对到字典中,如果键已存在,则不执行任何操作并返回 false;如果添加成功,则返回 true。 TryGetValue(TKey key, out TValue value): 尝试获取与给定键相关联的值,如果键存在于字典中,则将该值赋给 value 参数并返回 true;如果键不存在,则 value 参数保持不变并返回 false。 TryRemove(TKey key, out TValue value): 尝试从字典中移除具有指定键的键值对,如果移除成功,则将移除的值赋给 value 参数并返回 true;如果键不存在,则 value 参数保持不变并返回 false。

ConcurrentDictionary dict = new ConcurrentDictionary(); 

// 启动多个任务来向字典中添加数据
Parallel.For(1, 1000, i =>
{dict.TryAdd(i, $"Value {i}");
});
// 尝试获取并输出字典中的值
if (dict.TryGetValue(500, out string value))
{Console.WriteLine($"Value for key 500: {value}");
}
else
{Console.WriteLine("Key 500 does not exist in the dictionary.");
}
// 尝试移除并输出字典中的值
if (dict.TryRemove(500, out value))
{Console.WriteLine($"Removed value for key 500: {value}");
}
else
{Console.WriteLine("Key 500 does not exist in the dictionary.");
}

 

 

 

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com