![](/img/trans.png)
[英]How can I test if a SocketChannel.read() for a non-blocking channel has finished?
[英]Java: API to find if all the bytes written to Non-Blocking TCP SocketChannel has been sent to receiver?
按顺序编号:
你不知道 数据可能由OS和TCP / IP堆栈缓冲,并且没有确定其是否已实际放置在网络上的方法。 即使知道将其放在电线上也不能保证任何东西,因为它可能会在运输中丢失。
对于UDP,除非编写基于UDP的协议以使远程系统确认该数据,否则您将永远不知道目标系统是否已接收到该数据。
对于TCP,协议栈将确保在传输过程中丢失数据时通知您的代码,但是可能需要几秒钟才能收到确认。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.