Interface SchedulingAwareRunnable
- All Superinterfaces:
Runnable
- All Known Implementing Classes:
ScheduledMethodRunnable
Runnable
interface, adding special callbacks
for long-running operations.
Scheduling-capable TaskExecutors are encouraged to check a submitted Runnable, detecting whether this interface is implemented and reacting as appropriately as they are able to.
- Since:
- 2.0
- Author:
- Juergen Hoeller
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiondefault String
Return a qualifier associated with this Runnable.default boolean
Return whether the Runnable's operation is long-lived (true
) versus short-lived (false
).
-
Method Details
-
isLongLived
default boolean isLongLived()Return whether the Runnable's operation is long-lived (true
) versus short-lived (false
).In the former case, the task will not allocate a thread from the thread pool (if any) but rather be considered as long-running background thread.
This should be considered a hint. Of course TaskExecutor implementations are free to ignore this flag and the SchedulingAwareRunnable interface overall.
The default implementation returns
false
, as of 6.1. -
getQualifier
Return a qualifier associated with this Runnable.The default implementation returns
null
.May be used for custom purposes depending on the scheduler implementation.
TaskSchedulerRouter
introspects this qualifier in order to determine the target scheduler to be used for a given Runnable, matching the qualifier value (or the bean name) of a specificTaskScheduler
orScheduledExecutorService
bean definition.- Since:
- 6.1
- See Also:
-