2016-10-05 12 views
0

メソッドDatagramChannel.receive(ByteBuffer)のドキュメントでは、ByteBufferサイズと等しいチャネルからデータを読み込み、バッファサイズが小さすぎてデータを保持できない場合、残りのデータを破棄することを示しています。受信メソッドがデータを破棄したことを知る方法があるかどうか疑問に思っていました。ByteBufferが小さすぎるとDatagramChannel.receive(ByteBuffer)メソッドがパケットからデータを破棄したかどうかを知る方法はありますか?

答えて

0

通常、予想される最大データグラムよりも大きなバッファを使用します。そのサイズを取得すると、ほぼ確実に切り捨てられ、アプリケーションプロトコルエラーでもあります。

+0

しかし、推奨サイズはもっと大きいはずですが、バッファのサイズがパケットより小さく、パケットのデータの一部が切り捨てられていることを知る方法がありますか? – Sagar

+0

いいえ、これが唯一の方法です。 – EJP

関連する問題