# RunnableScheduler

Artifact: [androidx.work:work-runtime](https://developer.android.com/jetpack/androidx/releases/work) [View Source](https://cs.android.com/search?q=file:androidx/work/RunnableScheduler.java+class:androidx.work.RunnableScheduler) Added in [2.4.0](https://developer.android.com/jetpack/androidx/releases/work#2.4.0)

*** ** * ** ***


```
public interface RunnableScheduler
```

<br />

*** ** * ** ***

Can be used to schedule `https://developer.android.com/reference/java/lang/Runnable.html`s after a delay in milliseconds. This is used by the in-process scheduler to schedule timed work.

## Summary

| ### Public methods |
|---|---|
| `abstract void` | `https://developer.android.com/reference/androidx/work/RunnableScheduler#cancel(java.lang.Runnable)(@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/java/lang/Runnable.html runnable)` Cancels the `https://developer.android.com/reference/java/lang/Runnable.html` which was previously scheduled using `https://developer.android.com/reference/androidx/work/RunnableScheduler#scheduleWithDelay(long,java.lang.Runnable)`. |
| `abstract void` | `https://developer.android.com/reference/androidx/work/RunnableScheduler#scheduleWithDelay(long,java.lang.Runnable)( @https://developer.android.com/reference/androidx/annotation/IntRange(from = 0) long delayInMillis, @https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/java/lang/Runnable.html runnable )` Schedules a `https://developer.android.com/reference/java/lang/Runnable.html` to run after a delay (in milliseconds). |

## Public methods

### cancel

Added in [2.4.0](https://developer.android.com/jetpack/androidx/releases/work#2.4.0)

```
abstract void cancel(@NonNull Runnable runnable)
```

Cancels the `https://developer.android.com/reference/java/lang/Runnable.html` which was previously scheduled using `https://developer.android.com/reference/androidx/work/RunnableScheduler#scheduleWithDelay(long,java.lang.Runnable)`.

| Parameters |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/java/lang/Runnable.html runnable` | The `https://developer.android.com/reference/java/lang/Runnable.html` to be cancelled |

### scheduleWithDelay

Added in [2.4.0](https://developer.android.com/jetpack/androidx/releases/work#2.4.0)

```
abstract void scheduleWithDelay(
    @IntRange(from = 0) long delayInMillis,
    @NonNull Runnable runnable
)
```

Schedules a `https://developer.android.com/reference/java/lang/Runnable.html` to run after a delay (in milliseconds).

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/IntRange(from = 0) long delayInMillis` | The delay in milliseconds relative to the current time. |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/java/lang/Runnable.html runnable` | The `https://developer.android.com/reference/java/lang/Runnable.html` to be scheduled |