【发布时间】:2014-12-05 15:31:25
【问题描述】:
我有一个应用程序,其中一个线程用于计算一堆数字,但问题是应用程序在线程完成计算并返回计算出的数字之前完成。让应用程序等到计算完成的方法是什么?
这是我的代码:
namespace ThreadWaiting
{
class Program
{
public static int number=0;
public static void Main(string[] args)
{
Thread t = new Thread(Calculate);
t.Start();
//Wait here until processed?
Console.WriteLine(number);
Console.ReadKey();
}
private static void Calculate(object obj)
{
number = 2 + 2;
}
}
}
如果你运行它,你会看到它打印的是“0”而不是“4”。
有什么想法吗?谢谢!
【问题讨论】:
-
线程同步FTW!
-
Thread.Join就是你所需要的
标签: c# multithreading