hollow/src/main/java/com/netflix/hollow/api/consumer/HollowConsumer.java
public void triggerAsyncRefreshWithDelay(int delayMillis) {
        final long targetBeginTime = System.currentTimeMillis() + delayMillis;

        refreshExecutor.execute(() -> {
            try {
                long delay = targetBeginTime - System.currentTimeMillis();
                if (delay > 0)
                    Thread.sleep(delay);
            } catch (InterruptedException e) {
                // Interrupting, such as shutting down the executor pool,
                // cancels the trigger
                LOG.log(Level.INFO, "Async refresh interrupted before trigger, refresh cancelled", e);
                return;
            }

            try {
                triggerRefresh();
            } catch (Error | RuntimeException e) {
                // Ensure exceptions are propagated to the executor
                LOG.log(Level.SEVERE, "Async refresh failed", e);
                throw e;
            }
        });
    }
public void triggerAsyncRefreshWithDelay(int delayMillis) {
        final long targetBeginTime = System.currentTimeMillis() + delayMillis;

        refreshExecutor.execute(() -> {
            try {
                long delay = targetBeginTime - System.currentTimeMillis();
                if (delay > 0)
                    Thread.sleep(delay);
            } catch (InterruptedException e) {
                // Interrupting, such as shutting down the executor pool,
                // cancels the trigger
                LOG.log(Level.INFO, "Async refresh interrupted before trigger, refresh cancelled", e);
                return;
            }

            try {
                triggerRefresh();
            } catch (Error | RuntimeException e) {
                // Ensure exceptions are propagated to the executor
                LOG.log(Level.SEVERE, "Async refresh failed", e);
                throw e;
            }
        });
    }
public void triggerAsyncRefreshWithDelay ( int delayMillis ) { final long targetBeginTime = System . currentTimeMillis ( ) + delayMillis ; refreshExecutor . execute ( ( ) -> { try { long delay = targetBeginTime - System . currentTimeMillis ( ) ; if ( delay > 0 ) Thread . sleep ( delay ) ; } catch ( InterruptedException e ) { // Interrupting, such as shutting down the executor pool, // cancels the trigger LOG . log ( Level . INFO , "Async refresh interrupted before trigger, refresh cancelled" , e ) ; return ; } try { triggerRefresh ( ) ; } catch ( Error | RuntimeException e ) { // Ensure exceptions are propagated to the executor LOG . log ( Level . SEVERE , "Async refresh failed" , e ) ; throw e ; } } ) ; }
Triggers async refresh after the specified number of milliseconds has passed.
<p>
Any subsequent calls for async refresh will not begin until after the specified delay
has completed.

@param delayMillis the delay, in millseconds, before triggering the refresh
Triggers async refresh after the specified number of milliseconds has passed . <p > Any subsequent calls for async refresh will not begin until after the specified delay has completed .