# Uses of Interface
org.springframework.context.Phased

Packages that use Phased
Package
Description
org.springframework.context
This package builds on the beans package to add support for message sources and for the Observer design pattern, and the ability for application objects to obtain resources using a consistent API.
org.springframework.scheduling.concurrent
Scheduling convenience classes for the `java.util.concurrent` and `jakarta.enterprise.concurrent` packages, allowing to set up a ThreadPoolExecutor or ScheduledThreadPoolExecutor as a bean in a Spring context.

## Uses of Phased in org.springframework.context

Subinterfaces of Phased in org.springframework.context
Modifier and Type
Interface
Description
`interface`
`SmartLifecycle`
An extension of the `Lifecycle` interface for those objects that require to be started upon `ApplicationContext` refresh and/or shutdown in a particular order.

## Uses of Phased in org.springframework.scheduling.concurrent

Classes in org.springframework.scheduling.concurrent that implement Phased
Modifier and Type
Class
Description
`class`
`ExecutorConfigurationSupport`
Base class for setting up a `ExecutorService` (typically a `ThreadPoolExecutor` or `ScheduledThreadPoolExecutor`).
`class`
`ScheduledExecutorFactoryBean`
`FactoryBean` that sets up a `ScheduledExecutorService` (by default: a `ScheduledThreadPoolExecutor`) and exposes it for bean references.
`class`
`SimpleAsyncTaskScheduler`
A simple implementation of Spring's `TaskScheduler` interface, using a single scheduler thread and executing every scheduled task in an individual separate thread.
`class`
`ThreadPoolExecutorFactoryBean`
JavaBean that allows for configuring a `ThreadPoolExecutor` in bean style (through its "corePoolSize", "maxPoolSize", "keepAliveSeconds", "queueCapacity" properties) and exposing it as a bean reference of its native `ExecutorService` type.
`class`
`ThreadPoolTaskExecutor`
JavaBean that allows for configuring a `ThreadPoolExecutor` in bean style (through its "corePoolSize", "maxPoolSize", "keepAliveSeconds", "queueCapacity" properties) and exposing it as a Spring `TaskExecutor`.
`class`
`ThreadPoolTaskScheduler`
A standard implementation of Spring's `TaskScheduler` interface, wrapping a native `ScheduledThreadPoolExecutor` and providing all applicable configuration options for it.