0
点赞
收藏
分享

微信扫一扫

下面代码输出结果是什么?为什么?如何改进它?


int a = 0;
System.Threading.Tasks.Parallel.For(0, 100000, (i) =>
{
a++;
});
Console.Write(a);

解决方案如下

int a = 0;
object lockObj= new object();
System.Threading.Tasks.Parallel.For(0, 100000, (i) =>
{
lock (lockObj)
{
a++;
}
});
Console.Write(a);

结果就正常了.

举报

相关推荐

0 条评论