我有两个独立的任务和两个独立的操作。我认为 t0 是线程安全的,但我不确定 t1。这是对的吗?并发字典的性能很糟糕,我需要向集合中插入大量数据。
var t0 = new Task[2]
{
Task.Factory.StartNew(()=>
{
list1=new sortedlist<int,int>(sortedlist1)
}
}),
Task.Factory.StartNew(()=>
{
list2=new sortedlist<int,int>(sortedlist2)
})
};
Task.WaitAll(t0)
var t1 = new Task[2]
{
Task.Factory.StartNew(()=>
{
foreach (var item in sortedlist1)
{
list1.Add(item.Key, item.Value);
}
}),
Task.Factory.StartNew(()=>
{
foreach (var item in sortedlist2)
{
list2.Add(item.Key, item.Value);
}
})
};
Task.WaitAll(t1)