主题:请教一个多线程的问题!!!
lingmuhuizi
[专家分:0] 发布于 2005-05-26 09:57:00
谢谢!我的目的是一个线程的启动运行后,想停止做其他事,返回来时让这个线程重新启动运行。
我是这样做的:
thread->Resume();
thread->Terminate();
结果是:一旦运行终止程序后,就再也启动不了了。
另外一种是用挂起:
thread->Suspend();
结果:效果等于暂停。
是我的方法有问题,还是存在其他语句有这个功能的??请各位前辈指点,不胜感激
回复列表 (共5个回复)
沙发
christ115 [专家分:1580] 发布于 2005-05-26 18:15:00
Terminate之后,确实不能再启动。
除非再创建一个线程。
板凳
lingmuhuizi [专家分:0] 发布于 2005-05-27 08:37:00
先谢谢楼上的前辈!第一次给人家加分,不知道有没有加上,我加了30分,呵呵
原先我也是创建了两个线程,但是第一个线程是Execute()里面编写代码,第二个是什么?好像要自己设,但不知道怎么写。谢谢了!
3 楼
christ115 [专家分:1580] 发布于 2005-05-27 16:46:00
你的意思是,你创建了两个线程实例吗?
线程创建后就会执行Execute()里面的代码,没有例外啊
4 楼
lingmuhuizi [专家分:0] 发布于 2005-05-28 10:20:00
TMyThread *thrplay;
TMyThread *thrstop;
thrplay=new TMyThread(true);
thrplay=new TMyThread(true);
是这样定义的没错吧???然后在线程程序里面就一个Execute()啊,怎么写两个线程的执行语句呢,不好意思,有点想不明白
5 楼
lingmuhuizi [专家分:0] 发布于 2005-05-28 10:45:00
做出来了,谢谢楼上的[em1]
我来回复