关于socket的一个疑问

碎碎念 碎碎念 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我这边有两台设备,同一个厂家生产的,要实现用计算机对这两台设备的参数进行实时监控,通信协议为TCP 两台设备的ip地址,我设置好了,port均为4000,
遇到的主要问题是,在开始前,我确定两台设备都能ping通,但是,当用socket连接上一台设备以后,在连接第二台设备就无法连接,

if(!pumpIsCnn0)
{

pumpSock0->abort();
pumpSock0->connectToHost(QString("192.168.1.9"), 4000);
if(pumpSock0->waitForConnected(3000))
{
pumpIsCnn0 = true;
pumpTh->isCnn0 = true;
pumpTh->pSock[0] = pumpSock0;

ui->connAllBtn->setText(QString("已连接"));
}
}
if(!pumpIsCnn1)
{

pumpSock1->abort();
pumpSock1->connectToHost(QString("192.168.1.3"), 4000);
if(pumpSock1->waitForConnected(3000))
{
pumpIsCnn1 = true;
pumpTh->isCnn1 = true;
pumpTh->pSock[1] = pumpSock1;

ui->connAllBtn->setText(QString("已连接"));
}


连接上一台设备以后,第二个就连不上了,ping也不通了,要关闭已经连接上的那个socket,然后过了一会,才能ping通,这是怎么回事?是不是,这两个port的值,不能一样,但是,我觉得,这个port指的的设备的port和我这边没关系吧,我问过厂家的技术支持了,他们说他们的可以同时连接多台设备= =
...全文
评论 12
收藏 已收藏
分享
返回顶部