netty-writeAndFlush之发送速率不匹配

原文:https://blog.csdn.net/yangguosb/article/details/79121599 

应用发送数据前应该对isWritable进行判断,防止OOM

public void channelWritabilityChanged(ChannelHandlerContext ctx) throws Exception {
        if(ctx.channel().isWritable()){
            //小于低水位,增加速度
        }else{
            //超过高水位,降低速度
        }
    } 

.option(ChannelOption.WRITE_BUFFER_HIGH_WATER_MARK, 64 * 1024) .option(ChannelOption.WRITE_BUFFER_LOW_WATER_MARK, 32 * 1024)

猜你喜欢

转载自blog.csdn.net/jasonhongcn/article/details/84348617