sendUrgentData() void を使用して、接続がまだ有効かどうかを判断しようとしています。この void を介して送信されたデータはサーバー側では無視されますが、接続が失われると、sendUrgentData はクライアント側で SocketException をスローします。
これが行くべき方法です。ただし、sendUrgentData を数回呼び出した後、接続がまだ完全に有効な場合でも、接続が切断されて SocketException がスローされるようです。
java.net.SocketException: Connection reset by peer: send
スニファでネットワーク トラフィックをチェックしたところ、リセット パケットが送信されていないことがわかりました。これをどのように解決すればよいですか?現在ストリーム内にあるデータの破損を避けるために、このデータを通常の方法で送信しないようにしています。