C#线程实例:Abort()方法

在C#中,Thread类的Abort()方法用于终止线程。如果未完成中止操作,它会引发ThreadAbortException异常。

using System;
using System.Threading;
public class MyThread
{
    public void Thread1()
    {
        for (int i = 0; i < 10; i++)
        {
            Console.WriteLine(i);
            Thread.Sleep(200);
        }
    }
}
public class ThreadExample
{
    public static void Main()
    {
        Console.WriteLine("Start of Main");
        MyThread mt = new MyThread();
        Thread t1 = new Thread(new ThreadStart(mt.Thread1));
        Thread t2 = new Thread(new ThreadStart(mt.Thread1));

        t1.Start();
        t2.Start();
        try
        {
            t1.Abort();
            t2.Abort();
        }
        catch (ThreadAbortException tae)
        {
            Console.WriteLine(tae.ToString());
        }
        Console.WriteLine("End of Main");
    }
}

执行上面示例代码,得到以下结果(输出是不可预测的,因为线程可能处于运行状态。) -

Start of Main
0
End of Main

上一篇: C#线程实例:Sleep()方法 下一篇: C#线程实例:Join()方法