首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >关于qt串口调试助手多线程问题?

关于qt串口调试助手多线程问题?

提问于 2024-04-02 15:57:50
回答 0关注 0查看 19

我使用多线程去实现串口接受(根据线程ID看,确实实现了),但是在我拖动窗口的时候发现接受卡住了

widget.cpp:

代码语言:javascript
复制
Recive *recive = new Recive(&serialPort);
recive->moveToThread(&recive_Thread);
connect(&serialPort, &QSerialPort::readyRead, recive, &Recive::doDataReciveWork, Qt::QueuedConnection);
connect(recive, &Recive::sendResultToGui, this, &Widget::handleResults);
recive_Thread.start();

recive.cpp

代码语言:javascript
复制
void Recive::doDataReciveWork()
{
    QByteArray buffer = serialPort->readAll();

    // 2.进行数据处理
    QString resultStr = buffer;
    //qDebug() <<  "子线程收到数据:" << resultStr << "线程ID:" << QThread::currentThreadId();

    // 3.将结果发送到主线程
    emit sendResultToGui(resultStr);
}

回答

和开发者交流更多问题细节吧,去 写回答
相关文章

相似问题

相关问答用户
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档