线程的Abort 方法用于永久地停止托管线程。调用 Abort 时,公共语言运行库在目标线程中引发 ThreadAbortException,目标线程可捕捉此异常。一旦线程被中止,它将无法重新启动。
如果在应用程序中使用了多线程,辅助线程还没有执行完毕。在关闭窗体的时候必须要关闭辅助线程,否则会引发异常。
示例 线程的删除
下面的代码实现了删除线程t的功能。
namespace ThreadTest { public partial class Form1 : Form { private Thread t = null; public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { t = new Thread(new ThreadStart(ThMethord)); t.Start(); } public void ThMethord() { MessageBox.Show("线程启动"); } private void Form1_FormClosed(object sender, FormClosedEventArgs e) { if (t.IsAlive) { t.Abort();//关闭线程 } } } } |