首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

Qt线程类QThread 在windows下的线程创建和终结

2014-03-19 
Qt线程类QThread 在windows下的线程创建和结束Qt线程类QThread 在windows下的线程创建和结束:我用写一个线

Qt线程类QThread 在windows下的线程创建和结束
Qt线程类QThread 在windows下的线程创建和结束:我用写一个线程类继承与QThread ,重载run()函数里面有执行代码但是没有写循环。然后后每次运行都执行start(),来运行run()函数的代码。我有实例化好几个这个线程类对象。执行时都同时运行start()函数。
我现在有两个方面的疑惑:一:QThread 是什么时候创建线程和结束线的,是实例化线程QThread 类的时候还是什么时候? 二:我每次都会执行start()函数,那么在run()结束时,线程是挂起状态还是已经销毁?
三:用那种方式好些,在run()下面写过循环,还是线程执行时每次都执行一次start()函数。我的程序基本是这个几个线程并发的。
[解决办法]
1、底层线程在start()开始启动,start()结束就销毁。
2、如果频繁调用start()很有可能出现运行错误。
3、我的方法,run()函数里面写个while( flag )循环,控制flag的真假和使用QThread::wait()来保证线程的结束。

热点排行