public synchronized void postDelayed ( Runnable runnable , long delay , TimeUnit unit ) { long delayMillis = unit . toMillis ( delay ) ; if ( ( idleState != CONSTANT_IDLE && ( isPaused ( ) || delayMillis > 0 ) ) || Thread . currentThread ( ) != associatedThread ) { runnables . add ( new ScheduledRunnable ( runnable , currentTime + delayMillis ) ) ; } else { runOrQueueRunnable ( runnable , currentTime + delayMillis ) ; } }
Add a runnable to the queue to be run after a delay .