如何销毁C#中的线程?
Abort()方法用于销毁线程。
运行时通过抛出ThreadAbortException中止线程。无法捕获此异常,控制将被发送到finally块(如果有)。
以下是显示如何销毁线程的示例-
示例
using System;using System.Threading;
namespace MultithreadingApplication {
class ThreadCreationProgram {
public static void CallToChildThread() {
try {
Console.WriteLine("Child thread starts");
//做一些工作,例如数到10-
for (int counter = 0; counter <= 10; counter++) {
Thread.Sleep(500);
Console.WriteLine(counter);
}
Console.WriteLine("Child Thread Completed");
} catch (ThreadAbortException e) {
Console.WriteLine("Thread Abort Exception");
} finally {
Console.WriteLine("Couldn't catch the Thread Exception");
}
}
static void Main(string[] args) {
ThreadStart childref = new ThreadStart(CallToChildThread);
Console.WriteLine("In Main: Creating the Child thread");
Thread childThread = new Thread(childref);
childThread.Start();
//停止主线程一段时间
Thread.Sleep(2000);
//现在中止孩子
Console.WriteLine("In Main: Aborting the Child thread");
childThread.Abort();
Console.ReadKey();
}
}
}
输出结果
In Main: Creating the Child threadChild thread starts
0
1
2
In Main: Aborting the Child thread
Thread Abort Exception
Couldn't catch the Thread Exception
以上是 如何销毁C#中的线程? 的全部内容, 来源链接: utcz.com/z/358688.html