У меня есть канал, который должен оставаться открытым, потому что много писем написано, и я не хочу делать SSL-рукопожатие для каждой записи.Netty: гарантирован ли ChannelFuture/ChannelFutureListener «для каждого сообщения»?
Если бы я сделал это:
ChannelFuture future = channel.writeAndFlush(message1);
channel.writeAndFlush(message2);
future.addListener(new ChannelFutureListener(){
@Override
public void operationComplete(ChannelFuture channelFuture) throws Exception{
//check for success
}
});
channel.writeAndFlush(message3);
это предположение правильно, то operationComplete будет вызываться только для message1 но не для message2 ни message3?
Не в TCP, потому что в TCP нет сообщений. – EJP
В соответствии с принятым ответом на [это] (http://stackoverflow.com/questions/18580181/when-does-a-netty-channelfuture-for-a-write-operation-become-done?rq=1) и связанный источник 'ChannelOutboundBuffer'indeed создает« запись », содержащую данное сообщение и соответствующее будущее. – pma
В сообщениях о сообщениях ничего нет. Речь идет о завершенных операциях * write *. – EJP