QObject::startTimer: timers cannot be started from another thread 错误原因?

werther0331 2011-08-19 03:16:14
最初程序是在linux下完成并测试,没有任何问题。
但转到windows下,运行报下面的问题:
QObject::startTimer: timers cannot be started from another thread

简单说明下程序,一个界面的主线程和4个对等线程。4个线程只执行文件的操作,在结束的时候发出信号。主线程接收信号并执行槽。槽的内容是对界面的一些更新。

错误是不是跟windows线程和posix线程的差异有关??
...全文
2966 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zyf224 2012-05-03
  • 打赏
  • 举报
回复
能说下是怎么解决的吗,我也碰到了同样的问题
werther0331 2011-08-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 openxmpp 的回复:]

我以前遇到这种不可调用的情况
就不直接调用startTimer
而是emit signal,在slot里调用startTimer
你试试 看行吗
[/Quote]
程序中没有调用startTimer函数。调试发现在执行exec()时弹出该警告。

现在已经解决了。
乔巴好萌 2011-08-19
  • 打赏
  • 举报
回复
我以前遇到这种不可调用的情况
就不直接调用startTimer
而是emit signal,在slot里调用startTimer
你试试 看行吗
yby4769250 2011-08-19
  • 打赏
  • 举报
回复
这个应该不是错误吧,应该是个调试模式下的警告输出,我也遇到过,你贴代码嘛,估计是你在别的线程中启动了这个定时器

16,203

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧