0

我有线程通过使用 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(); 在按钮单击事件上。但它没有抛出 ThreadAbortException。

在做 Thread.Join(); 在 Thread.Abort() 之后;当线程正在执行它应该执行的操作时,它会抛出 ThreadStateException“线程尚未启动”。

4

1 回答 1

2

这对我有用:

设置一个全局布尔标志 -

isThreadAbort = false.

当它为真时,您可以使用

break;

或者

i = _PBAPI.Length
于 2016-05-08T16:32:25.647 回答