|
|
|
@ -636,9 +636,9 @@ void CliGkConn::AutoPing () {
|
|
|
|
|
void CliGkConn::StopAutoPing () { |
|
|
|
|
critsect.Enter(); |
|
|
|
|
{ |
|
|
|
|
if (AsyncTimer * timer = pingTimer) { |
|
|
|
|
if (pingTimer) { |
|
|
|
|
AsyncTimerDeleteCallback(pingTimer, CliGkConnTimerDestroyed); |
|
|
|
|
pingTimer = nil; |
|
|
|
|
AsyncTimerDeleteCallback(timer, CliGkConnTimerDestroyed); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
critsect.Leave(); |
|
|
|
@ -646,30 +646,18 @@ void CliGkConn::StopAutoPing () {
|
|
|
|
|
|
|
|
|
|
//============================================================================
|
|
|
|
|
void CliGkConn::TimerPing () { |
|
|
|
|
// Send a ping request
|
|
|
|
|
pingSendTimeMs = GetNonZeroTimeMs(); |
|
|
|
|
|
|
|
|
|
#if 0 |
|
|
|
|
// if the time difference between when we last sent a ping and when we last
|
|
|
|
|
// heard from the server is >= 3x the ping interval, the socket is stale.
|
|
|
|
|
if (pingSendTimeMs && abs(int(pingSendTimeMs - lastHeardTimeMs)) >= kPingTimeoutMs) { |
|
|
|
|
// ping timed out, disconnect the socket
|
|
|
|
|
AsyncSocketDisconnect(sock, true); |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
#endif |
|
|
|
|
{ |
|
|
|
|
// Send a ping request
|
|
|
|
|
pingSendTimeMs = GetNonZeroTimeMs(); |
|
|
|
|
|
|
|
|
|
const uintptr_t msg[] = { |
|
|
|
|
kCli2GateKeeper_PingRequest, |
|
|
|
|
pingSendTimeMs, |
|
|
|
|
0, // not a transaction
|
|
|
|
|
0, // no payload
|
|
|
|
|
nil |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
//Send(msg, arrsize(msg));
|
|
|
|
|
}
|
|
|
|
|
const uintptr_t msg[] = { |
|
|
|
|
kCli2GateKeeper_PingRequest, |
|
|
|
|
pingSendTimeMs, |
|
|
|
|
0, // not a transaction
|
|
|
|
|
0, // no payload
|
|
|
|
|
nil |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
Send(msg, arrsize(msg)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//============================================================================
|
|
|
|
|