.NET多线程编程中误用哪些点可能导致性能瓶颈或资源泄露?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1022个文字,预计阅读时间需要5分钟。
1. 共享变量问题+错误写法:+所有任务可能会共享同一个变量,因此输出结果可能一致。+public static void Error() { for (int i=0; i { Console.WriteLine({0}, i); }); } }+正确写法:+
1 共享变量问题
错误写法:
所有的任务可能会共享同一个变量,所以输出结果可能会一样。
public static void Error() { for(int i=0;i<10;i++) { Task.Run(() => { Console.WriteLine("{0}", i); }); } }
正确写法:
将变量i赋给局部变量temp,使得每一个任务使用不同的i值。
本文共计1022个文字,预计阅读时间需要5分钟。
1. 共享变量问题+错误写法:+所有任务可能会共享同一个变量,因此输出结果可能一致。+public static void Error() { for (int i=0; i { Console.WriteLine({0}, i); }); } }+正确写法:+
1 共享变量问题
错误写法:
所有的任务可能会共享同一个变量,所以输出结果可能会一样。
public static void Error() { for(int i=0;i<10;i++) { Task.Run(() => { Console.WriteLine("{0}", i); }); } }
正确写法:
将变量i赋给局部变量temp,使得每一个任务使用不同的i值。

