class Program { static void Main(string[] args) { Thread t1 = new Thread(new ParameterizedThreadStart(Work)); t1.Start(0); Thread.Sleep(1000); Thread t2 = new Thread(new ParameterizedThreadStart(Work)); t2.Start(1); Console.Read(); } static void Work(object obj) { int i = (int)obj; if (i == 0) { Thread.Sleep(100000); } else { Console.WriteLine("ok"); } } } 因为程序里会有多线程同时调用同一个静态(static)方法的情况,我有些担心当一个线程在调用静态方式时挂起会不会影响另一个线程对该静态方法的调用? 上面实验可以证明我的担心是多余的。静态方法和在方法内定义的局部变量都是独立的副本。