クライアントがサーバーから切断されたことを検出するにはどうすればよいですか?
AcceptCallBack
メソッドに次のコードがあります
static Socket handler = null;
public static void AcceptCallback(IAsyncResult ar)
{
//Accept incoming connection
Socket listener = (Socket)ar.AsyncState;
handler = listener.EndAccept(ar);
}
handler
クライアントがソケットから切断されたことをできるだけ早く発見する方法を見つける必要があります。
私はもう試した:
handler.Available;
handler.Send(new byte[1], 0, SocketFlags.None);
handler.Receive(new byte[1], 0, SocketFlags.None);
上記のアプローチは、サーバーに接続していて、サーバーがいつ切断されたかを検出したい場合には機能しますが、サーバーであり、クライアントの切断を検出したい場合には機能しません。
どんな助けでも大歓迎です。