//启动2个线程,一个线程一直添加数据,一个线程一直删除第一个元素
Task.Run(AddList);
Task.Run(RemoveList);
List vs = new List();
private async Task AddList()
{
while(true)
{
vs.Add("a");
}
}
private async Task RemoveList()
{
int vscount = 0;
while (true)
{
try
{
vscount = 0;
lock (vs)
vscount = vs.Count;
if (vscount > 0)
vs.RemoveAt(0);
}
catch (Exception e)
{
}
}
}
会在Exception e

有谁知道舍什么问题吗