Thisも同様の回答ですが、私が正確に望むものではありません。私は次の2つのことをしたい:Java:Non-Blocking TCP SocketChannelに書き込まれたすべてのバイトが受信者に送信されたかどうかを調べるAPI?
- すべてのバイトが受信者に送信されているかどうか調べたいのですか?
- また、ソケットの出力バッファの現在の残り容量を知りたいと思いますが、書き込みを試みることはありませんか?
Thisも同様の回答ですが、私が正確に望むものではありません。私は次の2つのことをしたい:Java:Non-Blocking TCP SocketChannelに書き込まれたすべてのバイトが受信者に送信されたかどうかを調べるAPI?
ためにあなたの番号のポイントを取る:あなたはそれを見つけることができます
あなたはわかりません。データは、OSとTCP/IPスタックによって潜在的にバッファされており、実際にワイヤに配置されているかどうかを判断する方法はありません。それがワイヤー上に置かれたことを知っていても、輸送中に失われる可能性のあるものは保証されません。
UDPの場合、リモートシステムがデータを確認するようなUDPベースのプロトコルを作成しない限り、データが宛先システムによって受信されたかどうかはわかりません。
TCPの場合、転送中にデータが失われた場合にコードが通知されますが、確認を受け取るまでに数秒かかることがあります。
バッファが空であるかどうかをチェックする(真偽の応答)だけの簡単なAPIはありますか? – PHcoDer
このようなAPIはどのような形式でもありません。 – EJP