Chinaunix
标题:
求助vc下keepalived
[打印本页]
作者:
newnew0601
时间:
2014-05-18 14:34
标题:
求助vc下keepalived
遇到一个问题,求解。希望各位大侠指导一下,写一个心跳,vc下的winsock.h没定义下面三个东东
TCP_KEEPIDLE/TCP-KEEPINTVL/TCP_KEEPCNT
我自己加了一下,分别是,4,5,6,
然后在setscokopt函数中分别写数。可是返回出错,出错代码是10042,这个地方就搞不清是什么原因,看哪位遇到过,能给说说,或提供个思路,谢谢了
作者:
newnew0601
时间:
2014-05-18 14:56
#define TCP_NODELAY 0x0001
#define TCP_KEEPIDLE 0x0004
sRet = setsockopt (s, IPPROTO_TCP, TCP_NODELAY,(ST_CHAR *) &noDelay, sizeof(noDelay));
sRet= setsockopt (s, IPPROTO_TCP, TCP_KEEPIDLE, (ST_CHAR *)&keepIdle, sizeof(keepIdle));
第二步sRet=-1了。查错误是10042,求解
作者:
newnew0601
时间:
2014-05-18 16:39
sRet= setsockopt (s, IPPROTO_TCP, TCP_KEEPIDLE, (ST_CHAR *)&keepIdle, sizeof(keepIdle));貌似这句有问题,sRet= setsockopt (s, SOL_SOCKET, TCP_KEEPIDLE, (ST_CHAR *)&keepIdle, sizeof(keepIdle));
作者:
newnew0601
时间:
2014-05-18 16:39
明天测试下,看是不是这个问题
作者:
hellioncu
时间:
2014-05-18 19:37
10042 Bad protocol option
作者:
hellioncu
时间:
2014-05-18 19:43
windows下只有SO_KEEPALIVE吧,你那几个应该是不支持的
作者:
newnew0601
时间:
2014-05-19 08:31
windows下的确没有,难道实现不了这个功能?
作者:
hellioncu
时间:
2014-05-19 08:42
newnew0601 发表于 2014-05-19 08:31
windows下的确没有,难道实现不了这个功能?
一般要心跳功能,建议自己在应用层实现
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2