如何实现netty Future.sync()?

时间:2016-02-07 11:21:35

标签: netty

这是io.netty.util.concurrent.Future:

的文档
Future<V> sync() throws InterruptedException
Waits for this future until it is done, and rethrows the cause of the failure if this future failed.

当实现源于网络未来的自己的未来时,我遇到了这个问题:如何重新抛出异常?是否缺少抛出声明(例如抛出Throwable或抛出ExecutionException)?

1 个答案:

答案 0 :(得分:0)

我认为您永远不需要从头开始实施Future。已经有一些现有的实现可以让您以更友好的方式使用Future

例如,您可以使用Promise只是Future,您可以通过设置值或例外(类似于CompletableFuture of Java8)来控制此生命周期。或者DefaultProgressivePromise用于模拟操作的进展。等

我无法想象你需要从头开始重写未来的用例,在我看来这是一个不好的做法。