32

我试图通过设置TCP_NODELAY参数在 Ubuntu Linux 机器上使用我的 TCP 套接字禁用Nagle 算法。出于某种原因,此常量未在or中定义。这个常量是否已被弃用,然后从 Linux 中删除,或者我只是遗漏了什么?<sys/types.h><sys/socket.h>

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;

}

4

1 回答 1

68

你有#include <netinet/tcp.h>吗?

于 2011-04-15T19:14:54.043 回答