Кто-нибудь может объяснить netty ChannelHandlerContext flush ()? - PullRequest
0 голосов
/ 13 октября 2018

Может ли кто-нибудь объяснить, что именно netty метод ChannelHandlerContext flush() делает?Будет ли он немедленно отправлять все сообщения через сеть, останавливая какую-либо определенную обработку, эффективно обходя любые обработчики в конвейере?

Ответы [ 2 ]

0 голосов
/ 13 октября 2018

Книга Netty в действии имеет более четкое определение:

write:

Записывает сообщение на канал.Это вызовет write(ChannelandlerContext, Object msg, ChannelPromise) для следующего ChannelOutboundHandler в ChannelPipeline.

Примечание: это не записывает сообщение в базовый сокет, а только ставит его в очередь.Чтобы записать его в Socket, вызовите flush() или writeAndFlush().

flush:

Очищает все ожидающие записи канала.Это вызовет flush(ChannelHandlerContext) на следующий ChannelOutboundHandler в ChannelPipeline

0 голосов
/ 13 октября 2018

Из документации Netty 4.1:

flush()

Запрос на сброс всех ожидающих сообщений через этот ChannelOutboundInvoker.

Вы можете найти больше примеров здесь: Примеры кода для ChannelHandlerContext.flush ()

...