• 6931阅读
  • 2回复

如何在主线程中终止所有的子线程? [复制链接]

上一主题 下一主题
离线realmao
 
只看楼主 倒序阅读 楼主  发表于: 2011-02-18
子线程数量未知,有办法在主线程中一次终止所有的子线程么?
离线rockyluo

只看该作者 1楼 发表于: 2011-02-18
引用楼主realmao于2011-02-18 23:03发表的 如何在主线程中终止所有的子线程? :
子线程数量未知..............

你把线程当啥,你以为当函数样调用
明显看出设计思路就有问题
线程能不开就不开,往往涉及到一些很耗时的操作导致界面被冻结,这个时候才会开个线程来完成那部分耗时的操作
这样的话,程序中线程的数目是一定数目的

而你提到的一下子关闭所有子线程,这个方法倒是没有的,起码我没见到
线程提供了terminate方法,直接调用往往会带来不安全的事情发生

如果线程是事件循环的
一般的处理是在每个线程的run函数中添加一个标记判断,主程序通过控制此标记来实现子线程的持续运行与否
                                                                                                              我们要团结一心,秉承Linux的开源精神,共享Qt问题的解决方法!
离线realmao
只看该作者 2楼 发表于: 2011-02-19
回 1楼(rockyluo) 的帖子
恩。。刚刚接触QT,线程以前也基本没用过。。。谢谢指教啦
快速回复
限100 字节
 
上一个 下一个