国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

java - Netty的future.channel().closeFuture().sync();到底有什么用?

瀏覽:135日期:2023-12-21 08:06:09

問題描述

我看到很多Netty的例子都在末尾加上了這句話:future.channel().closeFuture().sync();

比如:

public class TimeServer { private int count = 0; public void bind(int port) {try { EventLoopGroup bossGroup = new NioEventLoopGroup(); EventLoopGroup workGroup = new NioEventLoopGroup(); ServerBootstrap b = new ServerBootstrap(); // (2) b.group(bossGroup, workGroup).channel(NioServerSocketChannel.class) // (3) .childHandler(new ChannelInitializer<SocketChannel>() {@Overrideprotected void initChannel(SocketChannel arg0) throws Exception { arg0.pipeline().addLast(new LineBasedFrameDecoder(1024)); arg0.pipeline().addLast(new StringDecoder()); arg0.pipeline().addLast(new ChannelInboundHandlerAdapter() {@Overridepublic void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception { // ByteBuf buf = (ByteBuf) msg; // byte[] req = new // byte[buf.readableBytes()]; // buf.readBytes(req); // String body = new String(req, 'UTF-8'); System.out.println( 'The Time Server Received order:' + msg + '; the counter is:' + ++count); // String currentTime = 'QUERY TIME // ORDER'.equalsIgnoreCase(body) // ? new // Date(System.currentTimeMillis()).toString() // : 'BAD ORDER'; // // currentTime = currentTime + // System.getProperty('line.separator'); // ByteBuf resp = // Unpooled.copiedBuffer(currentTime.getBytes()); // ctx.writeAndFlush(resp);} });} }); ChannelFuture future = b.bind(port).sync(); System.out.println('Server start listen at ' + port); future.channel().closeFuture().sync();System.out.println('執行到這里 ' + port);} catch (InterruptedException e) { e.printStackTrace();} } public static void main(String[] args) {new TimeServer().bind(10000); }}

但是我看這行代碼一直沒有執行。請問這是怎么回事呢?

問題解答

回答1:

不是沒執行,是主線程到這里就 wait 子線程退出了,子線程才是真正監聽和接受請求的。

標簽: java
相關文章:
主站蜘蛛池模板: 阳山县| 卢氏县| 电白县| 安塞县| 夏津县| 金川县| 常山县| 汉寿县| 留坝县| 社会| 临沧市| 惠水县| 成武县| 彭阳县| 成武县| 长沙市| 扎囊县| 鹤山市| 紫金县| 北川| 女性| 穆棱市| 遵化市| 桂东县| 苏尼特右旗| 台湾省| 梁河县| 富平县| 鄂托克前旗| 弥勒县| 泾阳县| 石林| 岳普湖县| 逊克县| 东乡县| 庆安县| 陇川县| 恩平市| 石嘴山市| 揭西县| 玉龙|