# 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 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 after the given delay.
  `ScheduledFuture<?>`
  ScheduledExecutorService.`schedule(Runnable command, long delay, TimeUnit unit)`
  Submits a one-shot task that becomes enabled 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 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 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 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 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 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 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 first after the given initial delay, and subsequently with the given delay between the termination of one execution and the commencement of the next.