当前位置: 技术问答>linux和unix
基于socket的linux和Windows通信程序为什么运行特别慢?
来源: 互联网 发布时间:2015-08-29
本文导语: 小弟做了一个基于SOCKET通信程序,主要是Linux中的客户端程序和Windows端的服务器程序进行通信和数据传输,运行和通信没有问题,就是程序运行时要等很久才有执行结果,大家说这种情况是否正常?我应该怎么改进呢...
小弟做了一个基于SOCKET通信程序,主要是Linux中的客户端程序和Windows端的服务器程序进行通信和数据传输,运行和通信没有问题,就是程序运行时要等很久才有执行结果,大家说这种情况是否正常?我应该怎么改进呢?
|
你需要进一步做个测试,看看是连接花费的时间多,还是连接上后发送接受数据花费的时间,然后再来解决问题,你是不是最后用超级终端上来测试LINUX和WINDOWS程序的通信?
|
应该还是程序问题
|
我也感觉没有理由Linux/Unix Socket会比其他类型的Socket慢。
应该是具体的程序问题,我用Java的Socket函数写的C/S结构聊天室都没有感到什么速度问题。
应该是具体的程序问题,我用Java的Socket函数写的C/S结构聊天室都没有感到什么速度问题。
|
程序问题
|
在通讯双方都disable掉KEEPALIVE试试看
int iBool = FALSE;
setsockopt(sockfd, SOL_SOCKET, SO_KEEPALIVE, &iBool, sizeof(int));
int iBool = FALSE;
setsockopt(sockfd, SOL_SOCKET, SO_KEEPALIVE, &iBool, sizeof(int));