局部变量是否线程安全? 做了一个测试:用两个线程来加一个局部变量,看这个变量是否会受到影响。 被测试局部变量代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace threadtest { public class ThreadWork { public void work() { int testvar = 0; for (int i = 0; i < 100; i++) { testvar++; System.Threading.Thread.Sleep(1); Console.Write (System.Threading.Thread.CurrentThread.GetHashCode().ToString() + ":" + testvar.ToString()+" "); } } } } 用两个线程执行work()方法。 代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; namespace threadtest { //测试多线程 是否局部变量安全 class Program { static void Main(string[] args) { ThreadWork tw = new ThreadWork(); Thread t1=new Thread (new ThreadStart (tw.work )); Thread t2= new Thread(new ThreadStart(tw.work)); Thread t3 = new Thread(new ThreadStart(tw.work)); t1.Start(); t2.Start(); t3.Start(); Console.Read(); } } } 结果: 局部变量线程安全。 源码下载:http://download.csdn.net/source/1798813