示例代码,使用 ConcurrentDictionary:
using System.Collections.Concurrent;
using System.Threading.Tasks;
class Program {
static void Main() {
ConcurrentDictionary<int, string> dict = new ConcurrentDictionary<int, string>();
Task[] tasks = new Task[10];
for (int i = 0; i < 10; i++) {
int index = i;
tasks[i] = Task.Run(() => {
dict.TryAdd(index, $"Value{index}");
});
}
Task.WaitAll(tasks);
foreach (var item in dict) {
Console.WriteLine($"{item.Key}: {item.Value}");
}
}
}