0
私はjavaでサーバークライアントアプリケーションを実装しています。 クライアントがサーバーに何らかのメッセージを送信し、サーバーが応答する(応答しない)可能性があります。readUTFメソッドに受け取るべき値があるかどうかをチェックする方法
は、今私がメッセージを取り戻すためにis.readUTF();
メソッドを使用しています。この
is = new DataInputStream(client.getInputStream());
を見てください。
問題は readUTFがブロッキングコールであり、メッセージを受信するためにプログラムを停止させるという問題です。 私はサーバーが応答するかどうか、readUTFメソッドを停止してメッセージがあるかどうかをチェックし、メッセージが受信されない場合は続行する方法が必要であると述べました。
いずれにしても、サーバーが応答するようにします。また、クライアントが応答を受信する前に続行できる場合は、2番目のスレッドで通信します。 – xehpuk