TCP_NODELAY在Ubuntu上找不到。

34

我正在尝试通过设置TCP_NODELAY参数来禁用Ubuntu Linux框上TCP套接字中的Nagle算法。但是,出于某种原因,这个常量在<sys/types.h><sys/socket.h>中没有定义。这个常量是不是已经被弃用并从Linux中删除了,还是我只是漏掉了什么?

bool Socket::setTCPNoDelay(bool enabled)
{

    int flag = (enabled ? 1 : 0);

    if(setsockopt(m_sock,IPPROTO_TCP,TCP_NODELAY,(char *)&flag,sizeof(flag)) == -1)
    {
         return false;
    }

    return true;
}
1个回答

71

你是否已经#include <netinet/tcp.h>


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接