2015-04-27 3 views
0

Когда я пытаюсь записать определенное количество сообщений на мой сервер Netty, принимается только 1-3 сообщения. Я уверен, что канал доступен для записи.Netty не получает ожидаемое количество сообщений

Это мой код тестирования:

Sending the messages

Channel channel = PluginMessageClient.getClient().getChannel(); 

for(int i = 0; i < 10; i++) 
    channel.writeAndFlush(Unpooled.wrappedBuffer(new byte[]{1})); 

Receiving the messages

public class PluginMessageServerHandler extends SimpleChannelInboundHandler<ByteBuf> 
{ 
    @Override 
    protected void channelRead0(ChannelHandlerContext ctx, ByteBuf byteBuf) throws Exception 
    { 
     System.out.println("test"); //Being printed 1-3 times (varies every time I run the message sending method). 
    } 
} 

Любые идеи, почему это происходит?

+0

попробуйте использовать буфер и распечатать его, а также отправить разные сообщения. Какие сообщения вы получаете? – igreen

ответ

0

Вы сказали, что ваши каналы доступны для записи, но является ли соединение живым? Вы должны использовать класс:

ChannelGroup channels; 

вместо:

PluginMessageClient.getClient().getChannel(); 

Поскольку ChannelGroup управляет автоматически жизненный цикл каналов.

Смежные вопросы