首页 > 解决方案 > 通道管道上的 addLast 方法是否阻塞?

问题描述

我正在向通道管道动态添加和删除处理程序,但似乎有时对 addLast 方法的调用可能还没有完成添加处理程序,因为我相当直接的调用 c.pipeline.last() 似乎正在返回 null。我想知道我是否需要将其移至某种未来的听众?我正在使用 netty 4.1.27

标签: netty

解决方案


这有点古怪,这意味着只要您在EventLoop线程中执行这些操作就可以了,并且可以正常工作,而从其他线程执行此操作时可能无法直接看到。我们计划在 netty 的下一个主要版本中通过让所有操作返回一个未来来解决这个问题。


推荐阅读