为什么可以';关闭Netty服务器或Netty客户端?; 预期行为

为什么可以';关闭Netty服务器或Netty客户端?; 预期行为,netty,Netty,我已经启动了一个netty服务器,并通过netty客户端与它建立了连接。客户端向服务器发送消息,而服务器将反馈并关闭上下文(通道),当客户端从服务器收到消息时,它将关闭通道并关闭EventLoopGroup,然后退出程序 实际行为 但是,所有通道都已关闭,但EventLoopGroup无法关闭(isShutdown始终为false),无论是客户端还是服务器,主线程都被阻塞 复制步骤 代码如下所示 最小但完整的复制者代码(或代码的URL) 网络版 伊奥·内蒂 讨厌的 4.1.20.最终版本

我已经启动了一个netty服务器,并通过netty客户端与它建立了连接。客户端向服务器发送消息,而服务器将反馈并关闭上下文(通道),当客户端从服务器收到消息时,它将关闭通道并关闭EventLoopGroup,然后退出程序

实际行为 但是,所有通道都已关闭,但EventLoopGroup无法关闭(isShutdown始终为false),无论是客户端还是服务器,主线程都被阻塞

复制步骤 代码如下所示

最小但完整的复制者代码(或代码的URL)

网络版

伊奥·内蒂
讨厌的
4.1.20.最终版本
JVM版本(例如
java-version
) java版本“1.8.0_131”

操作系统版本(例如
uname-a
  • Ubuntu 16.04.3 LTS(GNU/Linux 4.4.0-104-generic x86_64)
  • OSX 10.13.1

这是4.1.20的缺陷,只需更新到4.1.21即可

clearThread
不是deamon线程


这是4.1.20的缺陷,只需更新到4.1.21即可

clearThread
不是deamon线程

    <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-all</artifactId>
        <version>4.1.20.Final</version>
    </dependency>