当前位置: 首页 > 知识库问答 >
问题:

Vert.x未来处理程序设置

倪子晋
2023-03-14

请查看下面位于扩展abstractverticle类内部的代码:

@Override
public void start(Future<Void> serverStartFuture) throws Exception {

    log.info("Deploying " + this.getClass().toString() + " verticle...");

    //TODO: Handler is not calling.
    serverStartFuture.setHandler(event -> {
        if(event.succeeded()){
            log.info("Deploying " + this.getClass().toString() + " verticle SUCCESS");
        } else if (event.failed()){
            log.error("Deploying " + this.getClass().toString() + " verticle FAIL:");
            log.error(event.cause());
        }
    });

    /* To follow future compose pattern in future */
    Future<Void> initSteps = this.initHttpServ();
    initSteps.setHandler((AsyncResult<Void> asyncResult) -> {
        if(asyncResult.succeeded()){
            serverStartFuture.complete();
        }else if(asyncResult.failed()){
            serverStartFuture.fail(asyncResult.cause());
        }
    });

}
private Future<Void> initHttpServ(){
    Future<Void> httpServerFuture = Future.future();
    httpServerFuture.complete();
    return  httpServerFuture;
}
    null

共有1个答案

姜旭
2023-03-14

不应该设置ServerStartFuture处理程序。它由Vert.x在verticle部署时设置。你应该要么在你的角质成功开始时完成未来,要么在其他情况下失败。

请参见Vert.x核心文档中的异步Verticle启动和停止。

 类似资料:
  • 我正在使用带有thymeleaf的Spring Boot,我所有的资源都在Spring应用程序之外的路径上,例如。在dev env上应该使用url解析路径,并且live env继续路径。 为什么资源处理程序不处理这些类型的资源,但是如果我处理没有问题?我错过了什么吗? 编辑:如果是并且位置是url也没有被处理

  • 使用上述配置,我能够在localhost启动应用程序使用dev_appserver.py.它localhost:8080index.html静态文件夹内提供服务。然而,当我部署应用程序时,fooapp.appspot.com结果为404。我在日志中看到下面的消息。未找到处理程序引用的静态文件:静态/index.html

  • 我有一个UITableView,在委托(视图控制器)中,我已经实现了该函数 然后,我测试编辑样式 作为删除的一部分,我请求用户确认,如果他们选择“是”,与该行相关的项目将被删除,如果他们选择“否”,我将重置编辑样式。 我似乎遇到的问题是没有调用任何完成处理程序。我在其他地方使用过这种格式,没有任何问题。 该警报将显示标题、消息以及按钮“取消”和“是”。如果我点击其中任何一个,什么都不会发生。警报被

  • 我试图使用一个简单的服务器-客户端应用程序(代码见下文)进入Netty。 我在与两个问题作斗争: null KJ 这就是服务器的创建方式: 其中一个处理程序类(FeedbackServerHandler执行完全相同的操作,但解析为整数):

  • 我有下面的一段代码: 预期的控制台输出:

  • 我有一个异步特质方法,它返回一个std Future: < code>ResultType是trait的关联类型,它是< code>Sync Send。 请注意,此类型不是Unpin类型。 我想从actix处理程序调用它,然后对结果做些什么。 例如: 这会失败,因为拥有未来,这是不允许的。清除的错误消息如下所示: 我该怎么做?