线程Abort

    public class ConsoleApplication1
    {
        static void Main()
        {
            MyThread myThread = new MyThread();
            Thread t = new Thread(myThread.Work);
            t.Start();
            t.Abort();
            Console.WriteLine(t.IsAlive.ToString() + "  " + t.ThreadState.ToString());
            try {
                Console.WriteLine("线程中止之后不能开启");
                t.Start();
            }
            catch {
                Console.WriteLine("线程正在运行或者终止不能被重启");
                Console.ReadLine();
            }
        }
    }
    public class MyThread
    {
        public void Work()
        {
            while (true) {
                Console.WriteLine("线程运行中");
            }
        }
    }

1、Abort可以在线程方法外部终止线程。如线程处于循环状态。

2、Abort终止线程之后不能再被开启。如果要在开线程,只能再new一条了。

-- 20220125

不推荐使用Thread.Abort(),参考https://www.cnblogs.com/a924453846/articles/5129235.html

posted @ 2015-06-26 11:49  江境纣州  阅读(112)  评论(0编辑  收藏  举报