Ответ 1
Вы #include <netinet/tcp.h>
?
Я пытаюсь отключить алгоритм Nagle с моими сокетами TCP в ящике Ubuntu Linux, установив параметр TCP_NODELAY. По какой-то причине эта константа не определена в <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;
}
Вы #include <netinet/tcp.h>
?