回 帖 发 新 帖 刷新版面

主题:请教一个多线程的问题!!!

谢谢!我的目的是一个线程的启动运行后,想停止做其他事,返回来时让这个线程重新启动运行。
我是这样做的:
 thread->Resume();

  thread->Terminate();
结果是:一旦运行终止程序后,就再也启动不了了。
另外一种是用挂起:
 thread->Suspend();
结果:效果等于暂停。

是我的方法有问题,还是存在其他语句有这个功能的??请各位前辈指点,不胜感激

回复列表 (共5个回复)

沙发

Terminate之后,确实不能再启动。
除非再创建一个线程。

板凳

先谢谢楼上的前辈!第一次给人家加分,不知道有没有加上,我加了30分,呵呵

原先我也是创建了两个线程,但是第一个线程是Execute()里面编写代码,第二个是什么?好像要自己设,但不知道怎么写。谢谢了!

3 楼

你的意思是,你创建了两个线程实例吗?
线程创建后就会执行Execute()里面的代码,没有例外啊

4 楼

TMyThread *thrplay;
TMyThread *thrstop;

thrplay=new TMyThread(true);
thrplay=new TMyThread(true);
是这样定义的没错吧???然后在线程程序里面就一个Execute()啊,怎么写两个线程的执行语句呢,不好意思,有点想不明白

5 楼

做出来了,谢谢楼上的[em1]

我来回复

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