问题描述
RT,我在遍历的时候重新启动了一个线程,现在我要对这个线程进行暂停和继续的操作。但是这个线程跟主程序线程是绑在一起的,我一暂停整个程序都挂起来了。有什么办法能把那个新线程分离出来,暂停的时候不影响主程序???
解决方案
解决方案二:
开新线程就行了
解决方案三:
开始遍历的时候我是开启了一个新线程,在程序里判断的时候Thread.CurrentThread还是当前线程
解决方案四:
没有解决办法吗?
解决方案五:
你把遍历这个任务给你新线程,然后你想遍历就通知子线程遍历,这样主线程停了也没关系了
解决方案六:
在程序里判断的时候Thread.CurrentThread还是当前线程??在那个位置进行的判断?
解决方案七:
新建线程的时候保存辅助线程到一个变量里面去,这样就可以直接操作它了Threadth=newThread();th.Start();th.Stop();
解决方案八:
switch(((Button)sender).Text){case"开始检查":cha=newThread(newThreadStart(threadchange));cha.Start();this.btnCheck.Text="暂停";break;case"暂停":if(cha.ThreadState==ThreadState.Running){cha.Suspend();this.btnCheck.Text="继续";}break;case"继续":if(cha.ThreadState==ThreadState.Suspended||cha.ThreadState==ThreadState.SuspendRequested){cha.Resume();this.btnCheck.Text="暂停";}break;}这是我的按钮事件,当第二次点击按钮也就是想暂停的时候,根本就进不去那个条件。。。原因是这个时候那个线程不知为什么是停止的。把那个cha设置为Thread.CurrentThread就可以进那个暂停的条件,但是整个主程序都挂起了,就像死了一样。。。