public static Future<?> invoke(final Invocation invocation, long millis) {
        return executor.schedule(invocation, millis, TimeUnit.MILLISECONDS);
    }
public static Future<?> invoke(final Invocation invocation, long millis) {
        return executor.schedule(invocation, millis, TimeUnit.MILLISECONDS);
    }
public static Future < ? > invoke ( final Invocation invocation , long millis ) { return executor . schedule ( invocation , millis , TimeUnit . MILLISECONDS ) ; }
Run the code in a new thread after a delay

@param invocation The code to run
@param millis     The time to wait before, in milliseconds
@return The future object, to know when the task is completed
Run the code in a new thread after a delay