回 帖 发 新 帖 刷新版面

主题:线程代码 终止后再启动????

一个线程终止后能不能再启动
代码如何写
比如说在一个点击事件中

回复列表 (共5个回复)

沙发

if(testThread.ThreadState==ThreadState.Aborted)
            
                          testThread.Start();
            
            else
                testThread.Abort();

板凳

会发生错误
未处理的“System.Threading.ThreadStateException”类型的异常出现在 mscorlib.dll 中。

其他信息: 线程正在运行或被终止;它无法重新启动。
这个怎么解决???

3 楼

不是吧?
你自己建一个线程弄弄

还有 thread的初始状态可能是unstared 你在判断的时候自己弄弄就行

4 楼

对1楼的回答:(点击事件引发线程,效果是一个动画)
   如果线程从没有启动过,你的代码无法使线程启动.
   如果处于启动状态,可以终止,但无法启动.
   if(testThread.ThreadState==ThreadState.Aborted)
            
                          testThread.Start();   //无法启动(点击 ,没有动画效果)
再次点击发生错误:
   未处理的“System.Threading.ThreadStateException”类型的异常出现在 mscorlib.dll 中。
   其他信息: 线程正在运行或被终止;它无法重新启动。

此时此线程状态到底是什么啊, 运行还是终止??

   

5 楼

线程被终止后,不能再次启动。

只能通过重新创建线程来实现。

我来回复

您尚未登录,请登录后再回复。点此登录或注册