static void Main(string[] args)
{
/*工作原理:主程序运行时,启动了一个耗时较长的线程来打印数字,每打印一个数字前等待两秒,但在 主线程中调用了t.Join()方法,
* 该方法允许等待直到线程t完成。借助该技术我们可以实现两个线程同步执行,当线程t完成时主程序会继续运行。第一个线程会等待第二个线程执行完成后继续执行,第一个线程等待时处于堵塞状态
*/
Console.WriteLine("Starting....");
Thread t = new Thread(PrintNumbersWithDelay);
t.Start();
t.Join();
Console.WriteLine("ThreadComplete");
}
static void PrintNumbersWithDelay()
{
for (int i = 1; i < 10;i++ )
{
Thread.Sleep(TimeSpan.FromSeconds(2));
Console.WriteLine(i);
}
}