Class SyncTaskExecutor

java.lang.Object
org.springframework.util.ConcurrencyThrottleSupport
org.springframework.core.task.SyncTaskExecutor
All Implemented Interfaces:
Serializable, Executor, TaskExecutor

public class SyncTaskExecutor extends ConcurrencyThrottleSupport implements TaskExecutor, Serializable
TaskExecutor implementation that executes each task synchronously in the calling thread. This can be used for testing purposes but also for bounded execution in a Virtual Threads setup, relying on concurrency throttling as inherited from the base class: see ConcurrencyThrottleSupport.setConcurrencyLimit(int) (as of 7.0).

Execution in the calling thread does have the advantage of participating in its thread context, for example the thread context class loader or the thread's current transaction association. That said, in many cases, asynchronous execution will be preferable: choose an asynchronous TaskExecutor instead for such scenarios.

Since:
2.0
Author:
Juergen Hoeller
See Also: