Class FutureExecution<V>

  • All Implemented Interfaces:
    FaultToleranceStrategy<Future<V>>

    public class FutureExecution<V>
    extends Object
    implements FaultToleranceStrategy<Future<V>>
    Unlike CompletionStageExecution, this is supposed to be the first strategy in the chain. The remaining strategies are executed on an extra thread. This allows using the synchronous strategies to implement Future-based @Asynchronous invocations, with two exceptions:
    • timeouts, where AsyncTimeout is needed in front of Timeout;
    • bulkheads, where FutureThreadPoolBulkhead is used instead of SemaphoreBulkhead simply because that's what the spec requires.