org.springframework.scheduling
Interface SchedulingAwareRunnable

All Superinterfaces:
java.lang.Runnable
All Known Implementing Classes:
DefaultMessageListenerContainer.AsyncMessageListenerInvoker

public interface SchedulingAwareRunnable
extends java.lang.Runnable

Extension of the Runnable interface, adding special callbacks for long-running operations.

This interface closely corresponds to the CommonJ Work interface, but is kept separate to avoid a required CommonJ dependency.

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:
commonj.work.Work, TaskExecutor, SchedulingTaskExecutor, WorkManagerTaskExecutor

Method Summary
 boolean isLongLived()
          Return whether the Runnable's operation is long-lived (true) versus short-lived (false).
 
Methods inherited from interface java.lang.Runnable
run
 

Method Detail

isLongLived

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.