を終えたことはありません:。ネッティー5.0.0 closeFuture()同期()私は現在、私は次の問題につまずいたネッティーを、使用してJavaでプログラムを書いている
私はチャンネル#closeFutureを(使用しようとするときはいつでも) "bootstrap"の実行後に.sync()を実行すると、タスクが終了せず、メインスレッドが永久にロックされます。まったく例外はスローされません。
マイ起動コード:
EventLoopGroup bossGroup = new NioEventLoopGroup();
EventLoopGroup workerGroup = new NioEventLoopGroup();
try {
ServerBootstrap serverBootstrap = new ServerBootstrap();
serverBootstrap.group(bossGroup, workerGroup);
serverBootstrap.channel(NioServerSocketChannel.class);
serverBootstrap.childHandler(new IOLauncher());
this.channel = serverBootstrap.bind(8192).sync().channel();
System.out.println("Debug; closeFuture");
this.channel.closeFuture().sync(); // This never finishes!
System.out.println("Debug; closeFuture done");
} catch (Exception e) {
e.printStackTrace();
} finally {
bossGroup.shutdownGracefully();
workerGroup.shutdownGracefully();
}
FYI:netty 5は推奨されていません。 5にあまりにも多くの時間を費やす前に、Netty 4.1に移行することを検討するかもしれません。 – Nicholas