我有线程通过使用Thread.Sleep在一定的时间间隔内循环来显示数据。
public class myThread{
public void threadPBAPI()
{
for (int i = 0; i < _PBAPI.Length; i++)
{
try
{
Console.writeLine();
Thread.Sleep(_interval * 1000);
}
catch (NullReferenceException)
{
}
}
}
}
我想中止停止此活动,因为当我按下一个按钮时,将加载一组新数据,并希望从一开始就执行相同的活动。
我尝试过做Thread.Abort();在按钮Click事件上。 但它没有抛出ThreadAbortException。
做Thread.Join();在Thread.Abort()之后;它抛出ThreadStateException&#34;线程尚未启动&#34;当线程正在执行它应该执行的操作时。
答案 0 :(得分:2)
这对我有用:
设置全局布尔标志 -
isThreadAbort = false.
如果是真的,你可以使用
break;
或
i = _PBAPI.Length