C# 线程是自动结束的吗?

Thread thread=New Thread(XXX);
thread.Start();
这样创建的线程。在执行方法XXX结束后,thread是自动退出的吗?为什么使用thread.ThreadState一种不能获取到ThreadState.Stoppoed这个属性?

楼主可参考一下下面:

thread.IsBackground = true;

将其值设为true就表示该线程为后台线程,应用程序则可以不考虑其是否已经运行完毕而直接退出,所有的后台线程在应用程序退出时都会自动结束。

       

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-11-27
        static void Main(string[] args)
        {
            Thread t = new Thread(F);
            t.Start();
            Thread.Sleep(10);//让主线程休眠一段时间再去检查子线程的状态
            Console.WriteLine(t.ThreadState);
            Console.ReadLine();
        }

        public static void F()
        {
            Console.WriteLine("F");
        }

本回答被提问者和网友采纳
第2个回答  2015-01-16
函数执行完线程就结束了
相似回答