一、简介
Abort方法可以通过跑出ThreadAbortException异常中止线程,而使用ResetAbort方法可以取消中止线程的操作,下面通过代码演示使用 ResetAbort方法。
二、代码
class Program
{
static void Main(string[] args)
{
Thread thread = new Thread(ThreadMethod); //执行的必须是无返回值的方法
thread.Name = "子線程A";
thread.Start();
Console.ReadKey();
}
public static void ThreadMethod(object parameter)
{
try
{
Console.WriteLine("我是:{0},我要終止了!", Thread.CurrentThread.Name);
//开始终止线程
Thread.CurrentThread.Abort();
//下面的代码不会执行
for (int i = 0; i < 10; i++)
{
Console.WriteLine("我是:{0},我循環{1}次", Thread.CurrentThread.Name, i);
}
}
catch (ThreadAbortException ex)
{
Console.WriteLine("我是:{0},我又恢復了", Thread.CurrentThread.Name);
//恢复被终止的线程
Thread.ResetAbort();
}
for (int i = 0; i < 10; i++)
{
Console.WriteLine("我是:{0},我循環{1}次", Thread.CurrentThread.Name, i);
}
}
}
三、运行结果
到此这篇关于C#多线程ResetAbort()方法的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持编程网。