假设我正在编写一个Java服务器,它通过TCP/IP与客户端通信。
该服务器使用I/O多路复用。有一个单独的线程T0,它在选择器上等待并处理客户端连接。例如,如果连接准备好读取,则T0从连接中读取数据。
假设服务器已经读取了一个传入请求,并且现在准备处理它。由于处理需要时间,因此请求在另一个线程T1中进行处理,而T0则返回到选择器上等待。
假设T1已完成处理并创建了响应。现在T0应开始将响应写入客户端连接。那么我的问题是:T1如何将响应发送给T0?
该服务器使用I/O多路复用。有一个单独的线程T0,它在选择器上等待并处理客户端连接。例如,如果连接准备好读取,则T0从连接中读取数据。
假设服务器已经读取了一个传入请求,并且现在准备处理它。由于处理需要时间,因此请求在另一个线程T1中进行处理,而T0则返回到选择器上等待。
假设T1已完成处理并创建了响应。现在T0应开始将响应写入客户端连接。那么我的问题是:T1如何将响应发送给T0?
Netty
在底层是如何工作的吗? - Michael