# Package org.springframework.core.task

@NonNullApi @NonNullFields package org.springframework.core.task
This package defines Spring's core TaskExecutor abstraction, and provides SyncTaskExecutor and SimpleAsyncTaskExecutor implementations.

Related Packages
Package
Description
org.springframework.core
Provides basic classes for exception handling and version detection, and other core helpers that are not specific to any part of the framework.
org.springframework.core.task.support
Support classes for Spring's TaskExecutor abstraction.
Class
Description
AsyncListenableTaskExecutor
Deprecated, for removal: This API element is subject to removal in a future version.
as of 6.0, in favor of `AsyncTaskExecutor.submitCompletable(Runnable)` and `AsyncTaskExecutor.submitCompletable(Callable)`
AsyncTaskExecutor
Extended interface for asynchronous `TaskExecutor` implementations, offering support for `Future`/`CompletableFuture` handles.
SimpleAsyncTaskExecutor
`TaskExecutor` implementation that fires up a new Thread for each task.
SyncTaskExecutor
`TaskExecutor` implementation that executes each task synchronously in the calling thread.
TaskDecorator
A callback interface for a decorator to be applied to any `Runnable` about to be executed.
TaskExecutor
Simple task executor interface that abstracts the execution of a `Runnable`.
TaskRejectedException
Exception thrown when a `TaskExecutor` rejects to accept a given task for execution.
TaskTimeoutException
Deprecated.
as of 5.3.16 since the common executors do not support start timeouts
VirtualThreadTaskExecutor
A `TaskExecutor` implementation based on virtual threads in JDK 21+.