【问题标题】:run netty server in separate thread在单独的线程中运行 netty 服务器
【发布时间】:2021-06-09 10:52:49
【问题描述】:

我有下一个应用程序来运行我的应用程序:

// class Server

public static void runServer(int port) {
  var boss = new NioEventLoopGroup()
  var worker = new NioEventLoopGroup()
  var serverBootstrap = new ServerBootstrap()
  try {
    serverBootstrap.group(boss, worker)
    // initilizers  
  } finally {
    // shutdown
  }
}


而且我还有一个入口点类:


// initialize logging
Server.run(some_port);
// other code in the application 

问题是:当我运行我的netty服务器时,我没有初始化其他代码(Server.run之后)。如何在netty中正确地做到这一点? 我的基本想法是:在单独的线程中运行,例如:

new Thread {
  public void run() {
     Server.run(some_port);
  }  
}

正确吗?还是我错过了 Netty 方法中的一些东西?

【问题讨论】:

    标签: java netty


    【解决方案1】:

    您的runServer 方法很可能会返回您绑定的Channel。在这种情况下,您还应该能够在它之后运行更多代码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-15
      • 1970-01-01
      • 2019-06-08
      • 1970-01-01
      • 1970-01-01
      • 2014-09-23
      • 1970-01-01
      • 2018-12-23
      相关资源
      最近更新 更多