## Uses of Interface
org.apache.commons.lang3.concurrent.ConcurrentInitializer

Packages that use ConcurrentInitializer
org.apache.commons.lang3.concurrent: Provides support classes for multi-threaded programming.

### Uses of ConcurrentInitializer in org.apache.commons.lang3.concurrent

Classes in org.apache.commons.lang3.concurrent that implement ConcurrentInitializer
`class` `AtomicInitializer<T>` A specialized implementation of the `ConcurrentInitializer` interface based on an `AtomicReference` variable.
`class` `AtomicSafeInitializer<T>` A specialized `ConcurrentInitializer` implementation which is similar to `AtomicInitializer`, but ensures that the `AtomicSafeInitializer.initialize()` method is called only once.
`class` `BackgroundInitializer<T>` A class that allows complex initialization operations in a background task.
`class` `CallableBackgroundInitializer<T>` A specialized `BackgroundInitializer` implementation that wraps a `Callable` object.
`class` `ConstantInitializer<T>` A very simple implementation of the `ConcurrentInitializer` interface which always returns the same object.
`class` `LazyInitializer<T>` This class provides a generic implementation of the lazy initialization pattern.
`class` `MultiBackgroundInitializer` A specialized `BackgroundInitializer` implementation that can deal with multiple background initialization tasks.

Methods in org.apache.commons.lang3.concurrent with parameters of type ConcurrentInitializer
`static <K,​V> V` ConcurrentUtils.`createIfAbsent​(java.util.concurrent.ConcurrentMap<K,​V> map, K key, ConcurrentInitializer<V> init)` Checks if a concurrent map contains a key and creates a corresponding value if not.
`static <K,​V> V` ConcurrentUtils.`createIfAbsentUnchecked​(java.util.concurrent.ConcurrentMap<K,​V> map, K key, ConcurrentInitializer<V> init)` Checks if a concurrent map contains a key and creates a corresponding value if not, suppressing checked exceptions.
`static <T> T` ConcurrentUtils.`initialize​(ConcurrentInitializer<T> initializer)` Invokes the specified `ConcurrentInitializer` and returns the object produced by the initializer.
`static <T> T` ConcurrentUtils.`initializeUnchecked​(ConcurrentInitializer<T> initializer)` Invokes the specified `ConcurrentInitializer` and transforms occurring exceptions to runtime exceptions.