线程的终止时通过 Thread 类的 abort 方法来实现的, 如一个现成执行时间太长, 用户有可能要终止这个线程, 这就要使用此方法
注意: 在线程调用 Abort 方法时, 会引发 ThreadAbortExcepion 异常, 如果没有捕捉异常, 线程将会终止
实例
通过 While 判定在屏幕上输出 ">" 字符的线程是否为执行完毕, 当线程没有执行完毕时, 就计算循环次数, 当达到 5 次时, 就终止线程.
- class Program
- {public static void meth()
- {
- for (int i = 1; i <=4000; i++)
- {
- if (i%40==0)
- {
- Console.WriteLine(">");
- }
- else
- {
- Console.Write(">");
- }
- }
- }
- static void Main(string[] args)
- {
- //ThreadStart ts = new ThreadStart(meth);
- Thread th = new Thread(meth);
- th.Start();
- Console.WriteLine("线程开始启动");
- int i = 0;
- while (th.IsAlive) // 判断线程状态
- {
- i++;
- Thread.Sleep(5); // 线程挂起 5 秒后在执行, 要不只会显示启动和终止
- if (i==5)
- {
- th.Abort(); // 终止线程
- Console.WriteLine("线程终止");
- }
- }
- Console.Read();
- }
来源: http://www.bubuko.com/infodetail-2631767.html