2016-08-05 55 views
-1

在嘗試使用TCP進行快節奏和高分組遊戲時,我想禁用TCP的數據包丟失檢測(如果數據包發生故障,則會發送另一個數據包),因爲這會增加時間並且真的不需要(我不在乎1-3包是否會丟失,會在幾秒鐘內覆蓋它)那麼,如何使用c#編程語言來完成此操作?如何禁用數據包丟失防護TCP c#

+0

我還沒有找到任何修改這個文件,所以沒有太多嘗試。然而,我嘗試過TcpClient.NoDelay = true;這不符合我的想法。 –

回答

2

改爲使用UDP! 您無法禁用它。

更新:
因此,我只是查找有關此問題的信息,發現禁用重新傳輸是可能的操作系統,但會導致中止連接 - 這支持我的初始聲明。這對整個操作系統來說都會產生問題。

對於Windows: https://support.microsoft.com/en-us/kb/170359

有一定會成爲別人的操作系統的設置也是如此。

+0

想避免使用UDP,因爲我喜歡有實際的連接狀態。還有什麼我可以做的? –

+2

在您的程序中實現連接狀態。然後使用UDP。 TCP要求所有數據包由接收端確認。這是TCP的基本特徵。 –