Vert.x:Result is already complete
来源:互联网 发布:手机上能编程的软件 编辑:程序博客网 时间:2024/05/19 16:32
问题由来:
在Vertx项目中,有时抛出一个异常
严重: Unhandled exception
ava.lang.IllegalStateException: Result is already complete: succeeded
at io.vertx.core.impl.FutureImpl.complete(FutureImpl.java:107)
at io.vertx.core.impl.FutureImpl.handle(FutureImpl.java:164)
at io.vertx.core.impl.FutureImpl.handle(FutureImpl.java:23)
at io.vertx.core.impl.FutureImpl.checkCallHandler(FutureImpl.java:188)
at io.vertx.core.impl.FutureImpl.tryComplete(FutureImpl.java:139)
......
顾名思义,是在future执行complete之前已经被complete掉了。
于是,码代码验证一下:
@Testpublic void voidTest(TestContext context) { Async async = context.async(); Future fut1 = Future.future(); fut1.setHandler(Future.succeededFuture()); vertx.executeBlocking(fut -> { System.out.println("doing some bloking operation"); fut.complete(); }, result -> { System.out.println("success"); fut1.complete(); });}
异常抛出如下:
doing some bloking operationsuccess六月 15, 2017 9:53:24 上午 io.vertx.core.impl.ContextImpl严重: Unhandled exceptionjava.lang.IllegalStateException: Result is already complete: succeeded
......
结论:
慎用Future.successedFuture();
阅读全文
0 0
- Vert.x:Result is already complete
- Vert.x
- Vert.x
- Vert.x 3---Vert.x 实现REST
- vert.x笔记:1.vert.x介绍
- Vert.x开发指南
- Vert.x安装指南
- Vert.x特性
- vert.x event bus
- vert.x入门
- Verticle in Vert.x
- Vert.x一些概念
- Vert.x module概念
- # vert.x学习笔记
- Vert.x开篇
- Vert.x入门实例
- Vert.x开发指南
- Vert.x日志配置
- 数据库设计三大范式
- interllij idea 第一次安装使用
- [C#]偵測系統Power狀態的改變以及是否進入Sleep mode
- sdre
- rxjava入门,从最简单的上手
- Vert.x:Result is already complete
- FineReport 集成到web项目(二)
- ubuntu查看搜索可安装包名
- R语言写简单线性回归
- 设计模式
- table列表中不换行处理(适应不同分辨率)
- Android GridView的用法总结
- 《UNIX网络编程 卷1》 笔记: 原始套接字—ping程序
- 时间复杂度和空间复杂度详解