Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java netty fireWriteComplete实际上没有向远程服务器写入任何内容_Java_Netty_Nio - Fatal编程技术网

Java netty fireWriteComplete实际上没有向远程服务器写入任何内容

Java netty fireWriteComplete实际上没有向远程服务器写入任何内容,java,netty,nio,Java,Netty,Nio,netty 3.x,nio型号: > NETTY IO写入线程将调用 RealabyByThank.Wrad(ByteBuffer)最后,NETY将认为它已成功写入,但实际上字节被写入套接字输出缓冲区。 在某些情况下,物理网络链路断开,但此写入操作不会引发异常,甚至返回大于0的整数(表示写入了一些字节),此WritableByteChannel不会及时检测到链路断开。所以当netty fireWriteComplete完成时,并不意味着某些字节真的被写入远程 我如何判断某些字节成功写入远程的位

netty 3.x,nio型号:

<> > NETTY IO写入线程将调用<代码> RealabyByThank.Wrad(ByteBuffer)最后,NETY将认为它已成功写入,但实际上字节被写入套接字输出缓冲区。 在某些情况下,物理网络链路断开,但此写入操作不会引发异常,甚至返回大于0的整数(表示写入了一些字节),此WritableByteChannel不会及时检测到链路断开。所以当netty fireWriteComplete完成时,并不意味着某些字节真的被写入远程

我如何判断某些字节成功写入远程的位置


我知道heartbeat机制可以告诉我何时收到heartbeat的确认,但是heartbeat机制会给我带来另一个问题。。。你不能。较长的答案是在协议逻辑中实现它,如发送和“ack”消息返回(如果接收到某些内容)