在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ 如何體現(xiàn)設(shè)置與不設(shè)置socket.setKeepAlive()的區(qū)別?

如何體現(xiàn)設(shè)置與不設(shè)置socket.setKeepAlive()的區(qū)別?

在客戶端設(shè)置socket.setKeepAlive(true, 1000),而服務(wù)器設(shè)置socket.setTimeout(2000)服務(wù)器卻依然會(huì)觸發(fā)timeout事件?setKeepAlive的作用不是在沒(méi)有數(shù)據(jù)傳輸時(shí)定時(shí)發(fā)送一些包來(lái)給服務(wù)器么?

回答
編輯回答
拮據(jù)

socket.setKeepAlive() 意思是如果規(guī)定時(shí)間沒(méi)連接,則發(fā)送一個(gè)空包確認(rèn)。

socket.setTimeout() 同理,也是規(guī)定時(shí)間內(nèi)沒(méi)連接的話會(huì)觸發(fā),但是不會(huì)發(fā)空包確認(rèn),當(dāng)然你可以通過(guò)回調(diào)函數(shù)中的 socket 來(lái)發(fā)一個(gè)確認(rèn)包,這樣就和 setKeepAlive 類(lèi)似了,除此之外會(huì)觸發(fā) timeout 事件。

這是以前看過(guò)的一篇文章,寫(xiě)的挺詳細(xì)的,你可以看看,點(diǎn)擊這里

2018年1月28日 17:53