- 论坛徽章:
- 0
|
我在服务器端调用listen使用
int my_send_size = 10 * 1024;
int my_recv_size = 32 * 1024;
int flag = setsockopt(sockfd, SOL_SOCKET, SO_SNDBUF, (void *)&my_send_size, my_send_len);
if(flag >= 0)
printf("set send OK\n");
flag = setsockopt(sockfd, SOL_SOCKET, SO_SNDBUF, (void *)&my_recv_size, my_recv_len);
if(flag >= 0)
printf("set recv OK\n");
设置了缓冲区大小,为了保险起见我在客户端也做了同样设置,当然是在connect之前。貌似是起了作用。如果我不做任何设置的话。我输出缓冲区大小为
send buf size:16384
recv buf size:87380
设置以后
send buf size:65536
recv buf size:87380
这个值好像不是我设定的值,但貌似setsockopt起了作用。
环境为fedora,内核为2.6.18。查询了相关资料,好像相关资料很少。没有找到一个我觉得比较像的答案。
谢谢 |
|