日期:2014-05-18  浏览次数:21200 次

停止线程的问题
是这样,比如说我用threadstart(xxx)       开始了一个新线程作业,我希望这个新线程(比如就叫做t1)执行函数代码的时候遇到异常出错的时候,能够把当前运行的t1进程结束掉,因为是自动运行的程序,请问这应该如何实现??

------解决方案--------------------
private static Thread mythread = new Thread(new ThreadStart(xxx)); // 这个是公共属性

public void Start()
{
mythread.Start();
}

public void Stop()
{
mythread.Abort();
}

private void xxx()
{
try{
}
catch(ThreadAbordException e)
{
// 线程被停止的时候,你还有机会处理停止前需要做的事情
}
catch(Exception e)
{
// 处理其他异常的抛出
}
// 线程在这里停止
}