私はJava NIOを使用しています。プレーヤーにメッセージを送信してからすぐに別のメッセージを送信したいと思います。2つのストレートセンドの分離方法は?
は、だから、僕は行の2つのメッセージを送信しています:
client.read(buffer)
だからバッファは次のようになります:
message1+message2
クライアントがメッセージを受信しますクライアントに2つのメッセージを表示させたいのですが、 問題はストリームに2回書き込むことですクライアントはストリームを一度に読み込み、1つのメッセージのようにすべてのデータ(2つのメッセージ)を取得します。
ストリームが空であることを確認する方法はありますか?空の場合にのみ、2番目のメッセージを書き込む方法はありますか?
改行文字などでメッセージを区切り、1行ずつ読み上げます。 – teppic
しかし、私は "socketchannel.read"メソッドを使用すると、すべてのストリームを読み込みますか?どうすればそれを制限できますか? – likesLowLevel
メッセージ内のバイト数を含む各メッセージの前にヘッダーを送信します。 – teppic