Java 如何从客户端立即读取数据?
如何从服务器netty 4中的客户端立即获取数据 在我向客户端发送数据的那个一刻,客户端向我发送数据。但处理程序(方法Java 如何从客户端立即读取数据?,java,netty,Java,Netty,如何从服务器netty 4中的客户端立即获取数据 在我向客户端发送数据的那个一刻,客户端向我发送数据。但处理程序(方法channelRead())仅在服务器发送数据之后才接收数据 我将在流程列表中显示的问题,我使用netty 4: 从客户端获取数据 开始计算响应 将一些服务数据作为(ctx.writeAndFlush())发送到客户端(确定) 继续计算响应 应该从客户端获取数据(这里有个问题) 向客户端发送计算响应(发送确定) 我的代码: 处理者 试验 您应该有一个ChannelInboundH
channelRead()
)仅在服务器发送数据之后才接收数据
我将在流程列表中显示的问题,我使用netty 4:
ctx.writeAndFlush()
)发送到客户端(确定)您应该有一个ChannelInboundHandler,它将在收到响应后得到通知。记住,netty中的所有内容都是非阻塞的
@Override
public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
logger.debug("Start read handler " + ctx.channel().toString());
ByteBuf b = (ByteBuf) msg;
ctx.write(Unpooled.copiedBuffer( new Test.send(ctx,b) );
}
public class Test
public byte[] send(ChannelHandlerContext ctx,ByteBuf b){
// start calculates
ctx.writeAndFlush(Unpooled.copiedBuffer(some data)); - its ok
// calculates .. (during here i should get data from client but nothing happens. Why does the channel blocks receiving data ? )
return response;
}