Package org.codehaus.groovy.util

# Class AbstractConcurrentMap.Segment<K,V>

java.lang.Object
java.util.concurrent.locks.AbstractOwnableSynchronizer
java.util.concurrent.locks.AbstractQueuedSynchronizer
org.codehaus.groovy.util.LockableObject
org.codehaus.groovy.util.AbstractConcurrentMapBase.Segment
org.codehaus.groovy.util.AbstractConcurrentMap.Segment<K,V>

All Implemented Interfaces:
  `Serializable`

Direct Known Subclasses:
  `ManagedConcurrentMap.Segment`

Enclosing class:
  `AbstractConcurrentMap<K,V>`

public abstract static class AbstractConcurrentMap.Segment<K,V> extends AbstractConcurrentMapBase.Segment

See Also:
  - Serialized Form

## Nested Class Summary

## Nested classes/interfaces inherited from class java.util.concurrent.locks.AbstractQueuedSynchronizer

`AbstractQueuedSynchronizer.ConditionObject`

## Field Summary

### Fields inherited from class org.codehaus.groovy.util.AbstractConcurrentMapBase.Segment

`table`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`Segment(int initialCapacity)`

## Method Summary

Modifier and Type
Method
Description
`protected abstract AbstractConcurrentMap.Entry<K,V>`
`createEntry(K key, int hash, V value)`
`final V`
`get(K key, int hash)`
`final AbstractConcurrentMap.Entry<K,V>`
`getOrPut(K key, int hash, V value)`
`final AbstractConcurrentMap.Entry`
`put(K key, int hash, V value)`
`void`
`remove(K key, int hash)`

### Methods inherited from class org.codehaus.groovy.util.LockableObject

`isHeldExclusively, lock, tryAcquire, tryRelease, unlock`

### Methods inherited from class java.util.concurrent.locks.AbstractQueuedSynchronizer

`acquire, acquireInterruptibly, acquireShared, acquireSharedInterruptibly, compareAndSetState, getExclusiveQueuedThreads, getFirstQueuedThread, getQueuedThreads, getQueueLength, getSharedQueuedThreads, getState, getWaitingThreads, getWaitQueueLength, hasContended, hasQueuedPredecessors, hasQueuedThreads, hasWaiters, isQueued, owns, release, releaseShared, setState, toString, tryAcquireNanos, tryAcquireShared, tryAcquireSharedNanos, tryReleaseShared`

### Methods inherited from class java.util.concurrent.locks.AbstractOwnableSynchronizer

`getExclusiveOwnerThread, setExclusiveOwnerThread`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### Segment

protected Segment(int initialCapacity)

## Method Details

### get

public final V get(K key, int hash)

### getOrPut

public final AbstractConcurrentMap.Entry<K,V> getOrPut(K key, int hash, V value)

### put

public final AbstractConcurrentMap.Entry put(K key, int hash, V value)

### remove

public void remove(K key, int hash)

### createEntry

protected abstract AbstractConcurrentMap.Entry<K,V> createEntry(K key, int hash, V value)