@Override
    public CompletionStage<Void> executeAsyncIo(CompletionStage<Void> f) {
        // check if this CF is already resolved
        final CompletableFuture<Void> ret = f.toCompletableFuture();
        // if it's not resolved, we may need to suspend
        if (!ret.isDone() && !isSuspended()) {
            suspend();
        }
        return ret;
    }
Suspends client connection for asynchronous request processing.
@param time an amount of time to suspend client connection for, expressed in provided units.
@param unit an {@link TimeUnit} for {@code time} parameter.
@throws IllegalStateException if it was previously suspended.
resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyAsynchronousExecutionContextImpl.java