SO_KEEPALIVE是系統底層的機制,用於系統維護每一個tcp連接的。
心跳線程屬於應用層,主要用於終端和服務器連接的檢查。
即使SO_KEEPALIVE檢測到連接正常,但並不能保證終端和服務器連接的正常。有一種情況,服務器進程死了,但它和客戶端的tcp連接還連着(該連接由系統維護的)。
這就是SO_KEEPALIVE不能取代心跳線程的原因吧。
SO_KEEPALIVE是系統底層的機制,用於系統維護每一個tcp連接的。
心跳線程屬於應用層,主要用於終端和服務器連接的檢查。
即使SO_KEEPALIVE檢測到連接正常,但並不能保證終端和服務器連接的正常。有一種情況,服務器進程死了,但它和客戶端的tcp連接還連着(該連接由系統維護的)。
這就是SO_KEEPALIVE不能取代心跳線程的原因吧。
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。