# ScheduledFuture

public interface **ScheduledFuture** implements [Delayed](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/Delayed.html) [Future](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/Future.html)\<V\>

|---|---|---|
| Known Indirect Subclasses [RunnableScheduledFuture](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/RunnableScheduledFuture.html)\<V\> |---|---| | [RunnableScheduledFuture](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/RunnableScheduledFuture.html)\<V\> | A `https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/ScheduledFuture.html` that is `https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Runnable.html`. | |||

A delayed result-bearing action that can be cancelled.
Usually a scheduled future is the result of scheduling
a task with a `https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/ScheduledExecutorService.html`.

### Inherited Method Summary

From interface [java.util.concurrent.Delayed](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/Delayed.html)

|---|---|
| abstract long | [getDelay](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/Delayed.html#getDelay(java.util.concurrent.TimeUnit))([TimeUnit](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/TimeUnit.html) unit) Returns the remaining delay associated with this object, in the given time unit. |

From interface [java.util.concurrent.Future](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/Future.html)

|---|---|
| abstract boolean | [cancel](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/Future.html#cancel(boolean))(boolean mayInterruptIfRunning) Attempts to cancel execution of this task. |
| abstract V | [get](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/Future.html#get(long,%20java.util.concurrent.TimeUnit))(long timeout, [TimeUnit](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/TimeUnit.html) unit) Waits if necessary for at most the given time for the computation to complete, and then retrieves its result, if available. |
| abstract V | [get](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/Future.html#get())() Waits if necessary for the computation to complete, and then retrieves its result. |
| abstract boolean | [isCancelled](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/Future.html#isCancelled())() Returns `true` if this task was cancelled before it completed normally. |
| abstract boolean | [isDone](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/Future.html#isDone())() Returns `true` if this task completed. |

From interface [java.lang.Comparable](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Comparable.html)

|---|---|
| abstract int | [compareTo](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Comparable.html#compareTo(T))([Delayed](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/concurrent/Delayed.html) o) Compares this object with the specified object for order. |