여기에 내 코드 예제가 있습니다. 제목에서 말했듯이 동시 레벨이 높을 때 isWritable()은 false를 반환합니다.netty channel.iswritable()은 동시 레벨이 높을 때 false를 반환합니다.
if (channel.isWritable()) {
ChannelFuture future = channel.writeAndFlush(data);
if (future.cause() != null) {
data.release();
throw new IOException(future.cause().toString());
}
future.addListener(writeCallback);
}
그리고 나는 이것이 내가 아는 한 지금까지의 원인이 발생하는 이유는 누군가가 설명 할 수 소원, 내가 쓴 일이 아니지만 때문에 버퍼 크기가 WRITE_BUFFER_HIGH_WATER_MARK 크기보다 더 추가를 플러시. 하지만 보시다시피 writeAndFlush()를 사용하므로 어디서 잘못되었는지 이해하지 못합니까?
CPU가 너무 바빠서 버퍼를 플러시하기 전에 너무 많은 메시지를 쓸 때 이런 일이 발생할 수 있습니까?
누군가 나를 도울 수 있기를 바랍니다. 감사합니다.
감사합니다. –