2010-01-13 32 views

回答

1

也許,如果你沒有得到心跳,你會做什麼?

如果你沒有辦法恢復有 沒有心跳的一點。

如果您使用從服務器回撥到客戶端的回撥,您需要一種客戶端可以要求服務器憎恨所有丟失回叫的方式,這並不容易。

此外,如果您沒有心跳,它並不意味着消息將不會在那裏得到,因爲可能會有各種網絡延遲,只是不滿意您的消息是安全的嗎?

的心臟搏動是易位,該 硬位是做什麼時,心臟 不打!

+0

當沒有收到心跳時,當前的實現是緊密連接。 – Benny 2010-01-13 08:11:24

1

是的。 TCP只會顯示物理連接仍然存在(即,套接字未被路由器或操作系統所吞噬)。但會告訴什麼也沒有關於應用程序可用性。如果管道另一端的進程處於while(1);循環中,並且未處理您的請求,則說明您沒有真正連接到它。

0

這是一個非常好的方式,可以知道您仍然在「應用程序級」連接到另一端,應用程序仍然可以通話。否則,你將不得不假設「另一端」沒有什麼可以「說」的,這很難與「35秒前實際丟失的網絡連接的另一端」分開。