我以为它是在编译时从/proc/sys/net/core/somaxconn
中获取的,但是在我通过echo 1024将它修改为
,1024
之后>/proc/sys/net/core/somaxconnSOMAXCONN
在我的程序中仍然是 128
。
printf("---------------set socket to listen,maxconn is %d--------------\r\n\r\n", SOMAXCONN);
// set socket to listen
if (listen(sock_listen, SOMAXCONN) != 0)...
我检查过 sys/socket.h
但它不在那里...
我在哪里/如何更改它的值?
最佳答案
在我的系统上,它在 bits/socket.h
中定义
/* Maximum queue length specifiable by listen. */
#define SOMAXCONN 128
根据 this ,您不需要使用 SOMAXCONN。只需指定您想要的数量,它将被限制为实际最大值。
关于c - c中定义的const SOMAXCONN在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6058799/