# Package org.apache.groovy.util.concurrent

## Package org.apache.groovy.util.concurrent Description

Concurrent programming utilities. Thread-safe data structures and concurrency helpers.

- Interface Summary
  Interface | Description
  --- | ---
  LazyInitializable | A `LazyInitializable` is an object that can be initialized lazily.

- Class Summary
  Class | Description
  --- | ---
  ConcurrentReferenceHashMap | An advanced hash table supporting configurable garbage collection semantics of keys and values, optional referential-equality, full concurrency of retrievals, and adjustable expected concurrency for updates.
  ConcurrentReferenceHashMap.HashIterator | Base iterator implementation for traversing the map.
  ConcurrentReferenceHashMap.InitializableEntry | Reusable entry implementation for cached entry iteration.
  ConcurrentReferenceHashMap.SimpleEntry | Simple mutable entry implementation used by the map views.
  ConcurrentReferenceHashMap.WriteThroughEntry | Custom Entry class used by EntryIterator.next(), that relays setValue changes to the underlying map.
  ManagedIdentityConcurrentMap | This is a basic implementation of a map able to forget its keys could be weak/soft/strong references.
  ThreadHelper | Helper for starting threads that prefers virtual threads when running on Java 21+, falling back to platform threads on older runtimes.

- Enum Summary
  Enum | Description
  --- | ---
  ConcurrentReferenceHashMap.Option | Behavior-changing configuration options for the map
  ConcurrentReferenceHashMap.ReferenceType | An option specifying which Java reference type should be used to refer to a key and/or value.