# Uses of Interface
java.util.concurrent.ScheduledFuture

Packages that use ScheduledFuture
Package
Description
java.util.concurrent
Utility classes commonly useful in concurrent programming.

- ## Uses of ScheduledFuture in java.util.concurrent

  Subinterfaces of ScheduledFuture in java.util.concurrent
  Modifier and Type
  Interface
  Description
  `interface`
  `RunnableScheduledFuture<V>`
  A `ScheduledFuture` that is `Runnable`.
  Methods in java.util.concurrent that return ScheduledFuture
  Modifier and Type
  Method
  Description
  `ScheduledFuture<?>`
  ForkJoinPool.`schedule(Runnable command, long delay, TimeUnit unit)`
  Submits a one-shot task that becomes enabled for execution after the given delay.
  `<V> ScheduledFuture<V>`
  ForkJoinPool.`schedule(Callable<V> callable, long delay, TimeUnit unit)`
  Submits a value-returning one-shot task that becomes enabled for execution after the given delay.
  `ScheduledFuture<?>`
  ScheduledExecutorService.`schedule(Runnable command, long delay, TimeUnit unit)`
  Submits a one-shot task that becomes enabled for execution after the given delay.
  `<V> ScheduledFuture<V>`
  ScheduledExecutorService.`schedule(Callable<V> callable, long delay, TimeUnit unit)`
  Submits a value-returning one-shot task that becomes enabled for execution after the given delay.
  `ScheduledFuture<?>`
  ScheduledThreadPoolExecutor.`schedule(Runnable command, long delay, TimeUnit unit)`
  `<V> ScheduledFuture<V>`
  ScheduledThreadPoolExecutor.`schedule(Callable<V> callable, long delay, TimeUnit unit)`
  `ScheduledFuture<?>`
  ForkJoinPool.`scheduleAtFixedRate(Runnable command, long initialDelay, long period, TimeUnit unit)`
  Submits a periodic action that becomes enabled for execution first after the given initial delay, and subsequently with the given period; that is, executions will commence after `initialDelay`, then `initialDelay + period`, then `initialDelay + 2 * period`, and so on.
  `ScheduledFuture<?>`
  ScheduledExecutorService.`scheduleAtFixedRate(Runnable command, long initialDelay, long period, TimeUnit unit)`
  Submits a periodic action that becomes enabled for execution first after the given initial delay, and subsequently with the given period; that is, executions will commence after `initialDelay`, then `initialDelay + period`, then `initialDelay + 2 * period`, and so on.
  `ScheduledFuture<?>`
  ScheduledThreadPoolExecutor.`scheduleAtFixedRate(Runnable command, long initialDelay, long period, TimeUnit unit)`
  Submits a periodic action that becomes enabled for execution first after the given initial delay, and subsequently with the given period; that is, executions will commence after `initialDelay`, then `initialDelay + period`, then `initialDelay + 2 * period`, and so on.
  `ScheduledFuture<?>`
  ForkJoinPool.`scheduleWithFixedDelay(Runnable command, long initialDelay, long delay, TimeUnit unit)`
  Submits a periodic action that becomes enabled for execution first after the given initial delay, and subsequently with the given delay between the termination of one execution and the commencement of the next.
  `ScheduledFuture<?>`
  ScheduledExecutorService.`scheduleWithFixedDelay(Runnable command, long initialDelay, long delay, TimeUnit unit)`
  Submits a periodic action that becomes enabled for execution first after the given initial delay, and subsequently with the given delay between the termination of one execution and the commencement of the next.
  `ScheduledFuture<?>`
  ScheduledThreadPoolExecutor.`scheduleWithFixedDelay(Runnable command, long initialDelay, long delay, TimeUnit unit)`
  Submits a periodic action that becomes enabled for execution first after the given initial delay, and subsequently with the given delay between the termination of one execution and the commencement of the next.