Форма с тремя аргументами ChannelPipeline#addLast()
принимает EventExecutorGroup
в качестве первого аргумента. Этот метод часто упоминается как способ работы с синхронным кодом: передайте новый экземпляр DefaultEventExecutorGroup
, и все готово.
Если код, запущенный в ChannelHandler
, добавил этопутевые блоки, которые будут блокировать поток из DefaultEventExecutorGroup
, переданного во время addLast()
, верно? И не какой-нибудь поток, который Netty может использовать для связи с ServerSocket
?
. Если это так, значит ли это, что ChannelHandlerContext#write()
, вызванный из такого обработчика, также будет вести себя правильно? Или записи будут потенциально не по порядку, поскольку они происходят из потенциально разных потоков? Есть ли предпочтительный способ выполнить запись изнутри ChannelHandler
, добавленного таким образом?
Наконец, каково будет значение channelHandlerContext.executor().inEventLoop()
в таком ChannelHandler
, добавленном таким образом? Я предполагаю, что он вернется false
.