没钱好难 2022-03-22 16:20 采纳率: 0%
浏览 1028

Qt TcpSocket一次性发送大数据(65536个字节),接受端readyRead信号对应的槽函数进都不进了。但是每次把数据发少一点(500个字节就可以)

问题:我在QTcpSocket和QTcpServer的基础上开发一个视觉软件的C/S模式,需要一次性发送大数据,大概每次发送65536个字节,本地使用可以,但是我换到两台电脑上之后,我Server一次性发送65536个字节,我Client与readyRead对应的槽函数进都不进了(也不是总是出现这种情况,十次大概有八次),发少一点就可以,请问大家有没有办法解决这个问题

这里是绑定接受的信号和槽
// 检测是否可以接收数据,当检测到有数据接收时,就会发送readyRead信号
connect(m_tcp,&QTcpSocket::readyRead,this,&MainWindow::ReadData);

客户端接收数据的槽函数
void MainWindow::ReadData()
{
QByteArray data = m_tcp->readAll();
ui->record->append("Receive:" + data);
}

服务器发送数据的函数
void MainWindow::on_sendMsg_clicked()
{
QString msg = ui->msg->toPlainText();
m_tcp->write(msg.toUtf8());//服务器发送数据
m_tcp->flush();
m_tcp->waitForBytesWritten();
}

  • 写回答

2条回答 默认 最新

  • 一个和尚 2023-11-28 09:33
    关注

    请问题主有解决这个问题吗?

    评论

报告相同问题?

问题事件

  • 创建了问题 3月22日

悬赏问题

  • ¥20 公众号如何实现点击超链接后自动发送文字
  • ¥15 用php隐藏类名和增加类名
  • ¥15 算法设计与分析课程的提问
  • ¥15 用MATLAB汇总拟合图
  • ¥15 智能除草机器人方案设计
  • ¥15 对接wps协作接口实现消息发送
  • ¥15 SQLite 出现“Database is locked” 如何解决?
  • ¥15 已经加了学校的隶属邮箱了,为什么还是进不去github education?😭
  • ¥15 求会做聚类,TCN的朋友有偿线上指导。以下是目前遇到的问题
  • ¥100 无网格伽辽金方法研究裂纹扩展的程序