SocketChannel.write是否等待TCP ACK?

时间:2018-05-21 10:51:38

标签: java tcp nio

我们在客户端使用Java NIO与服务器通信。 在TCP重传的情况下会发生什么:

我们会挂起写操作直到得到确认或我们会立即返回吗?

(我知道IO是异步的,我们异步获得响应,但是ACK会怎样)

1 个答案:

答案 0 :(得分:3)

它不会等待ACK。

当数据完全传输到发送方的套接字发送缓冲区时,从API的角度来看,TCP写入已完成。之后发生的事情与发送应用程序完全异步,并且除了通过const request=require('request') const csv=require('csvtojson') const http = require('http'); csv() .fromStream(request.get('csv file url')) .subscribe((json)=>{ console.log(json) }); 在阻塞模式下具有正LINGER超时之外不会被检测到。

相关问题