我需要能够绑定和侦听端口,并且能够将数据包发送到其他地址,是否可以使用已创建的DatagramChannelFactory
或ConnectionlessBootstrap
执行此操作?看到UDP是无连接的。
public static void start() {
DatagramChannelFactory f = new NioDatagramChannelFactory(Executors.newCachedThreadPool());
ConnectionlessBootstrap b = new ConnectionlessBootstrap(f);
b.setPipelineFactory(new ChannelPipelineFactory() {
@Override
public ChannelPipeline getPipeline() throws Exception {
return Channels.pipeline(new Encoder(), new Decoder(), new ServerHandler());
}
});
b.bind(new InetSocketAddress(Config.PORT));
}
答案 0 :(得分:1)
是的,你可以。实际上,重用ChannelFactory
总是一个好主意。 Bootstrap
不需要重复使用。将其视为Spring Framework中的模板对象。