C# KeepAlive的相關設置
網上有很多相關KeepAlive的內容,終于找到了有關C#的這方面資料,設置了下,有行可靠!
TcpListener myListener = new TcpListener(ipAddress.Any, port);//綁定端口IP信息 myListener.Start();//開始監聽 TcpClient newClient=myListener.AcceptTcpClient();//接受請求 newClient.Client.IOControl(IOControlCode.KeepAliveValues, KeepAlive(1, 30000, 10000), null);//設置Keep-Alive參數 PRivate byte[] KeepAlive(int onOff, int keepAliveTime, int keepAliveInterval) { byte[] buffer = new byte[12]; BitConverter.GetBytes(onOff).CopyTo(buffer, 0); BitConverter.GetBytes(keepAliveTime).CopyTo(buffer, 4); BitConverter.GetBytes(keepAliveInterval).CopyTo(buffer, 8); return buffer; }
KeepAlive函數參數說明:
onOff:是否開啟KeepAlive
keepAliveTime:開始首次KeepAlive探測前的TCP空閉時間
keepAliveInterval: 兩次KeepAlive探測間的時間間隔
Keep-Alive的位置我是放在收到客戶端以后,對每個連入的客戶端都設置一次。
相關文章:http://www.companysz.com/lidabo/p/4253356.html
新聞熱點
疑難解答