IPPROTO_TCP1使用错误
想使程序在接收到数据后,立即发送携带ACK的应答数据。
希望实现流程为:
1。接收数据
2.立即发送应答数据
但是程序执行流程为:
1。接收数据
2.200毫秒后发送ACK
3。300毫秒后发送应答数据
尝试通过SetSockOpt设置SOCKET,但现象依旧。
修改程序如下:
m_pSocket = new CListeningSocket(this);
if (m_pSocket->Create(788))
{
bool nZero_1=1;
int nZero_2=0;
m_pSocket->SetSockOpt(TCP_NODELAY , (const char *)(&nZero_1), sizeof(nZero_1), SOL_SOCKET);
m_pSocket->SetSockOpt(SO_SNDBUF , (const char *)(&nZero_2), sizeof(nZero_2), SOL_SOCKET);
if (m_pSocket->Listen())
{
return TRUE;
}
}
else
return FALSE;
请教问题在何处?
WingForce(初六,履霜,坚冰至。) ( ) 信誉:100 Blog 2007-01-12 13:31:56 得分: 0
level = IPPROTO_TCP1
Value Type Meaning
TCP_NODELAY BOOL Disables the Nagle algorithm for send coalescing.
1 included for backward compatibility with Windows Sockets 1.1
m_pSocket->SetSockOpt(TCP_NODELAY , (const char *)(&nZero_1), sizeof(nZero_1), IPPROTO_TCP1);
为什么编译不过?
D:\20061103\mp3test\ChatSvrDlg.cpp(158) : error C2065: 'IPPROTO_TCP1' : undeclared identifier