PC端作为客户端 安卓手机作为服务器 通过USB连接使用socket通讯问题
如题目,建立连接后,客户端使用send发送信息给服务器intsendSize=send(sockfd,sendBuff,len,0);返回值sendSize等于字符串的长...
如题目,建立连接后,客户端使用send发送信息给服务器
int sendSize = send(sockfd,sendBuff,len,0);
返回值sendSize等于字符串的长度,没有问题,但是服务器端接收不到信息。
然而当客户端关闭socket连接后
closesocket(sClient);
服务器端就收到了send 的数据,请问这是什么原因?
为什么不能实时收发数据,如何才能做到?谢谢
已经解决了,谢谢。 展开
int sendSize = send(sockfd,sendBuff,len,0);
返回值sendSize等于字符串的长度,没有问题,但是服务器端接收不到信息。
然而当客户端关闭socket连接后
closesocket(sClient);
服务器端就收到了send 的数据,请问这是什么原因?
为什么不能实时收发数据,如何才能做到?谢谢
已经解决了,谢谢。 展开
1个回答
展开全部
//对socket设置KEEPALIVE和NODELAY
socket s;
...
unsigned len = sizeof(unsigned int);
setsockopt(sock_cli, SOL_SOCKET, SO_KEEPALIVE, &optval, len);//使用KEEPALIVE
setsockopt(sock_cli, IPPROTO_TCP, TCP_NODELAY, &optval, len);//禁用NAGLE算法
来自百度。不未尝试过,不知道能不能解决这个问题。
你可以试一试。
记得有个flush函数,不过此处应该是没有用处的。
socket s;
...
unsigned len = sizeof(unsigned int);
setsockopt(sock_cli, SOL_SOCKET, SO_KEEPALIVE, &optval, len);//使用KEEPALIVE
setsockopt(sock_cli, IPPROTO_TCP, TCP_NODELAY, &optval, len);//禁用NAGLE算法
来自百度。不未尝试过,不知道能不能解决这个问题。
你可以试一试。
记得有个flush函数,不过此处应该是没有用处的。
追问
这个方法我试过了,不起作用,谢谢。
光派通信
2024-09-03 广告
2024-09-03 广告
对光传输设备进行调试和维护,需要掌握以下关键点:1. **熟悉设备性能**:深入了解OTN/DWDM等光传输产品的性能特点,确保能够熟练使用设备。2. **按规范操作**:依据产品说明书和维护手册进行调试和维护,确保操作步骤正确无误。3. ...
点击进入详情页
本回答由光派通信提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询