Class SegmentedConcurrentMap.RemoveAction

  • All Implemented Interfaces:
    SegmentedHashMap.EntryAction, SegmentedHashMap.IterableEntryAction
    Enclosing class:
    SegmentedConcurrentMap

    protected class SegmentedConcurrentMap.RemoveAction
    extends SegmentedHashMap.RemoveAction
    Action support for remove(). The action performs a logical locked remove, and is expected to run while holding the segment-lock for the specified key. If the Entry corresponding to the specified key is still necessary in the map (e.g. for representing a lock state), the Entry may not be physically removed, but rather converted to be synthetic.

    The context object for a RemoveAction is unused.

    The result of invoking a RemoveAction is the previous value associated with the specified key, or NO_VALUE if no mapping for the key exists in the map. Note that a synthetic Entry does not represent a key-value mapping, so NO_VALUE is returned if a matching synthetic Entry is found.