Top Description Fields Methods
org.springframework.scheduling

public Interface SchedulingTaskExecutor

extends AsyncTaskExecutor
Known Direct Implementers
org.springframework.scheduling.concurrent.ConcurrentTaskExecutor, org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor, org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler
Imports
org.springframework.core.task.AsyncTaskExecutor

A org.springframework.core.task.TaskExecutor extension exposing scheduling characteristics that are relevant to potential task submitters.

Scheduling clients are encouraged to submit Runnables that match the exposed preferences of the TaskExecutor implementation in use.

Author
Juergen Hoeller
Since
2.0
See Also
SchedulingAwareRunnable, org.springframework.core.task.TaskExecutor

Field Summary

Inherited from org.springframework.core.task.AsyncTaskExecutor:
TIMEOUT_IMMEDIATETIMEOUT_INDEFINITE

Method Summary

Modifier and TypeMethod and Description
public default boolean

Returns:

true if this executor prefers short-lived tasks (the default), false otherwise (for treatment like a regular TaskExecutor)
prefersShortLivedTasks
()

Does this TaskExecutor prefer short-lived tasks over long-lived tasks?

Inherited from org.springframework.core.task.AsyncTaskExecutor:
executesubmitsubmitsubmitCompletablesubmitCompletable

Method Detail

prefersShortLivedTasksback to summary
public default boolean prefersShortLivedTasks()

Does this TaskExecutor prefer short-lived tasks over long-lived tasks?

A SchedulingTaskExecutor implementation can indicate whether it prefers submitted tasks to perform as little work as it can within a single task execution. For example, submitted tasks might break a repeated loop into individual subtasks which submit a follow-up task afterwards (if feasible).

This should be considered a hint. Of course TaskExecutor clients are free to ignore this flag and hence the SchedulingTaskExecutor interface overall. However, thread pools will usually indicate a preference for short-lived tasks, allowing for more fine-grained scheduling.

Returns:boolean

true if this executor prefers short-lived tasks (the default), false otherwise (for treatment like a regular TaskExecutor)