我正在尝试使用TCP / IP传输邮件。我发现如果一方总是充当发送方并且另一方总是充当接收方,则转移很快。但如果双方更频繁地转换角色,那就变得非常缓慢。
具体来说,此操作需要6毫秒:
**Server:**
for (int i = 0; i < 5000; i++){
read(connfd, s1, 128);
read(connfd, s2, 128);
}
**Client:**
for (int i = 0; i < 5000; i++){
write(sockfd, s1, 128);
write(sockfd, s2, 128);
}
此操作需要98毫秒:
**Server:**
for (int i = 0; i < 5000; i++){
read(connfd, s1, 128);
write(connfd, s2, 128);
}
**Client:**
for (int i = 0; i < 5000; i++){
write(sockfd, s1, 128);
read(sockfd, s2, 128);
}
有没有办法减少这种延迟?