• 1395阅读
  • 3回复

[提问]子线程执行等待,需要等待外设返回的值满足条件才能继续执行 [复制链接]

上一主题 下一主题
离线yangli2007
 

只看楼主 倒序阅读 楼主  发表于: 2021-05-09
在子线程的run 函数 的while 循环里面写执行处理逻辑,  先执行动作1 ,然后通过发送信号给主线程的TCP,发给外设 ,此时子线程需要等待外设返回的值满足条件才能继续执行,   主线程的收到返回值后直接发送信息给子线程,子线程槽函数收到后,判断是否满足条件,满足则让自信车继续执行。这种一般如何写呢?请教大神,主要是子线程等待返回值,满足条件在继续,不知道如何处理
离线rpdhunter

只看该作者 1楼 发表于: 2021-05-09
别继承QThread,使用QObject的moveToThread函数,例子参考https://www.cnblogs.com/nanqiang/p/10818609.html
离线lieber

只看该作者 2楼 发表于: 2021-05-09
有一个类叫QWaitCondition,具体用法有官方示例
离线deepgui

只看该作者 3楼 发表于: 2021-05-16
回 rpdhunter 的帖子
rpdhunter:别继承QThread,使用QObject的moveToThread函数,例子参考https://www.cnblogs.com/nanqiang/p/10818609.html (2021-05-09 17:20) 

对的。要用类似的Walker类。因为在thread操作里,可能会与其它线程交换数据,这只能通过信号和槽实现。
快速回复
限100 字节
 
上一个 下一个