| Modifier and Type | Class and Description |
|---|---|
| public class | ReentrantContext
ReentrantContext is a base class to hold thread-local data supporting reentrancy in either a ThreadLocal or a ConcurrentLinkedQueue |
| public abstract class | ReentrantContextProvider<
ReentrantContext subclass K extends ReentrantContext>This abstract ReentrantContextProvider helper class manages the creation, storage, and retrieval of concrete ReentrantContext instances which can be subclassed to hold cached contextual data. |
| public abstract class | ReentrantContextProviderCLQ<
ReentrantContext subclass K extends ReentrantContext>This ReentrantContextProvider implementation uses one ConcurrentLinkedQueue to store all ReentrantContext instances (thread and its child contexts) Note: this implementation keeps less contexts in memory depending on the concurrent active threads in contrary to a ThreadLocal provider. |
| public abstract class | ReentrantContextProviderTL<
ReentrantContext subclass K extends ReentrantContext>This ReentrantContextProvider implementation uses a ThreadLocal to hold the first ReentrantContext per thread and a ReentrantContextProviderCLQ to store child ReentrantContext instances needed during recursion. |