
AI
使用 .NET Framework 中的并发 HashSet
csharpusing System;using System.Collections.Concurrent;class Program{ static void MAIn(string[] args) { // 创建一个并发 HashSet<int> 对象 ConcurrentHashSet<int> set = new ConcurrentHashSet<int>(); // 在多个线程中同时添加元素 Parallel.For(0, 100000, i => { set.Add(i); }); // 检查集合中是否包含某个元素 bool contAIns = set.ContAIns(9999); Console.WriteLine("Set contAIns 9999: " + contAIns); // 删除集合中的元素 set.Remove(9999); // 检查集合中是否包含某个元素 contAIns = set.ContAIns(9999); Console.WriteLine("Set contAIns 9999: " + contAIns); Console.ReadLine(); }}// 并发 HashSet<T> 的简单实现class ConcurrentHashSet<T>{ private readonly ConcurrentDictionary<T, byte> dictionary; public ConcurrentHashSet() { dictionary = new ConcurrentDictionary<T, byte>(); } public void Add(T item) { dictionary.TryAdd(item, 0); } public void Remove(T item) { byte value; dictionary.TryRemove(item, out value); } public bool ContAIns(T item) { return dictionary.ContAInsKey(item); }}在上面的示例代码中,我们创建了一个并发 HashSetCopyright © 2025 IZhiDa.com All Rights Reserved.
知答 版权所有 粤ICP备2023042255号