由于保持活动而导致连接中断时,aix / linux上返回的错误是什么? 它是一个独特的错误代码,可以从其他套接字错误区分?
在Windows上,这可以是WSAECONNRESET或WSAENETRESET 。
当返回WSAECONNRESET时,有没有办法区分由于keepalive活动导致的错误?
WSAECONNRESET 10054由对等方重置连接。 现有的连接被远程主机强制closures。 如果远程主机上的对等应用程序突然停止,主机重新启动,主机或远程networking接口被禁用,或者远程主机使用硬closures(请参阅setsockopt以获取有关远程SO_LINGER选项的更多信息sockets)。 如果由于保活活动在一个或多个操作正在进行时检测到故障而导致连接中断,则也可能导致此错误。 正在进行的操作由于WSAENETRESET而失败。 随后的操作失败,WSAECONNRESET。
当返回WSAECONNRESET时,有没有办法区分由于keepalive活动导致的错误?
不可以。基本条件是所有情况下的“连接重置”。