[问题] TcpCilent 连线状况

楼主: g66932007 (孤单的人)   2018-05-15 10:32:55
请问用TCPClient socket 去做server - client 连线
在client 端要怎么去检查是否还连线呢?
用了几个方法 还是无法正确告知已断线
return !(socket.Poll(1, SelectMode.SelectRead) && socket.Available == 0);
byte[] testByte = new byte[1];
//使用Peek测试连线是否仍存在
if (socket.Connected && socket.Poll(0, SelectMode.SelectRead))
notclosed = (socket.Receive(testByte, SocketFlags.Peek) ==
0);
client.TcpClient.Connected && client.TcpClient.Client.Connected
以上都会回传true 即使断线了...
难道要一直跟server request data 来验证是否连线吗?
这样client一多 server就爆了
作者: smmoon (邦)   2018-05-16 16:54:00
你有收到timeout吗? 你可以试试看多少c会爆s
作者: WoodChen (木头)   2018-05-17 22:46:00

Links booklink

Contact Us: admin [ a t ] ucptt.com