[netty] nettyサーバー側では、主な送信コマンドが送信されますが、相手のクライアントが受信しない場合、再送信するように設定するにはどうすればよいですか。?

パブリッククラスMessageHandlerはChannelInboundHandlerAdapterを拡張してChannelOutboundHandler {

    @オーバーライド
    public void channelActive(ChannelHandlerContext ctx)が例外をスローします{
        マップnewMap = new HashMap <>();
        // 3秒ごとにメッセージを再送信します
        ctx.executor()。scheduleAtFixedRate(()-> {
            if(map.size()> 0) 
            {
                map.forEach((k、v)-> {
                    ctx.writeAndFlush(v.data);
                    v.times = v.times + 1;
                    if(v.times <3) 
                    {
                        //未送信を3回保持します。
                        newMap.put(v.id、v);
                    }
                });
            }
            map = newMap;
        }、3、3、TimeUnit.SECONDS);
    }
}

おすすめ

転載: www.cnblogs.com/wxxujian/p/12706420.html