查询中数据量多,程序等待时间较长,在提交查询时加了一个等待窗口,,
代码如下:
//等待窗口 启动
Thread thPIC = new Thread(new ThreadStart(waitfmshow));
thPIC.Name = "waitfmshow";
thPIC.Priority = ThreadPriority.Normal;
thPIC.Start();
。。.查询代码
Thread.Sleep(100);
thPIC.Abort(); //查询关闭
//等待窗口
public void waitfmshow()
{
WaitingForm waitfm = new WaitingForm();
Application.Run(waitfm);
}
现在问题是提交太频繁时经常出现 ThreadAbortException,无奈啊。。。
------解决方案--------------------------------------------------------
if (thPIC.IsAlive)
{
thPIC.Abort();
}
------解决方案--------------------------------------------------------
通过标志,在线程中要对标志做相应的处理
然后关闭时,先打开标志,用线程Join来等待结束
catch(ThreadAbortException ex)
{
}