找回密码
 立即注册
收起左侧

socket处理速度

3
回复
6740
查看
[复制链接]
累计签到:4 天
连续签到:1 天
来源: 2013-11-27 20:42:12 显示全部楼层 |阅读模式
5Qter豆
我在程序中发送广播命令,几乎同时采集两个传感器的数据,两个传感器几乎在同时返回数据,间隔时间理论是毫秒级,tcp/socket如下:
  1. void QTcpSocketThread::socketRead()
  2. {
  3.     recvPkgBuffer = tcpSocket->readAll();
  4.     recvTrue= true;
  5.     qDebug() << recvPkgBuffer.toHex().toUpper().data();
  6. if ((uchar)recvPkgBuffer.at(0)== 0xFF && (uchar)recvPkgBuffer.at(1)== 0xFF)
  7.      {
  8.         procHartSensorPkg();
  9.      }

  10. }
复制代码
   procHartSensorPkg();里面要处理很多内容;但是我返回的数据包仅仅相隔毫秒级的,目前运行代码只显示一个传感器的,另外一个是不是因为socket中的解析第一个传感器的程序正在运行,所以第二个数据上不来??还是别的原因?

最佳答案

查看完整内容

其实你说对了,可以去看看文档,socket的确是要处理完数据后才能接收下一个数据包。 可以开两个server监听两个端口,当然具体看你自己的需求了
回复

使用道具 举报

尚未签到

2013-11-27 20:42:13 显示全部楼层
其实你说对了,可以去看看文档,socket的确是要处理完数据后才能接收下一个数据包。

可以开两个server监听两个端口,当然具体看你自己的需求了

点评

我新发一个帖子 帮忙看下呗 这次整体策略变了  详情 回复 发表于 2013-12-2 18:59
哦 还真是这样啊 不能开两个 我再想想办法  详情 回复 发表于 2013-11-28 09:24
回复

使用道具 举报

累计签到:4 天
连续签到:1 天
2013-11-28 09:24:25 显示全部楼层
Joey_Chan 发表于 2013-11-27 22:47
其实你说对了,可以去看看文档,socket的确是要处理完数据后才能接收下一个数据包。

可以开两个server监听 ...

哦  还真是这样啊  不能开两个 我再想想办法
回复

使用道具 举报

累计签到:4 天
连续签到:1 天
2013-12-2 18:59:35 显示全部楼层
Joey_Chan 发表于 2013-11-27 22:47
其实你说对了,可以去看看文档,socket的确是要处理完数据后才能接收下一个数据包。

可以开两个server监听 ...

我新发一个帖子 帮忙看下呗  这次整体策略变了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了