日期:2014-05-17  浏览次数:20660 次

关于前台线程的疑问

private void button2_Click(object sender, EventArgs e)
        {
            Thread t1 = new Thread(
                () =>
                {
                    for (int i = 0; i < 10; i++)
                    {
                        Console.WriteLine(i);
                        Thread.Sleep(2000);
                    }

                    Console.WriteLine("前台第二线程马上关闭");
                }
            ) { IsBackground = false};

            Console.WriteLine("主线程马上关闭");
            Application.Exit();
        }


疑问:
1.前台线程是主线程嘛?是UI线程吗?
2.如上代码,自己声明的线程是个前台线程,为什么还没有打印东西程序就退出了?书上面不是说,前台线程没有执行完毕,程序是不会结束的吗?

谢谢回答.
线程 c#

------解决方案--------------------
你的只是声明一个线程而已,又没有启动,会打印东西才有鬼;
------解决方案--------------------
t1什么时候启动了?还是代码太先进,我已经看到不懂了?
------解决方案--------------------
修改下代码,你的线程创建了,但是根本就没有Start
t1.Start();
Thread.Sleep(1000);
Console.WriteLine("主线程马上关闭");
            Application.Exit();