org.jboss.cache.util.concurrent
Class ConcurrentHashSet<E>
java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractSet<E>
org.jboss.cache.util.concurrent.ConcurrentHashSet<E>
- All Implemented Interfaces:
- java.lang.Iterable<E>, java.util.Collection<E>, java.util.Set<E>
public class ConcurrentHashSet<E>
- extends java.util.AbstractSet<E>
A simple Set implementation backed by a ConcurrentHashMap to deal with the fact that the
JDK does not have a proper concurrent Set implementation that uses efficient lock striping.
Note that values are stored as keys in the underlying Map, with a static dummy object as value.
- Since:
- 2.0.0
- Author:
- Manik Surtani
|
Field Summary |
protected java.util.concurrent.ConcurrentHashMap<E,java.lang.Object> |
map
|
| Methods inherited from class java.util.AbstractSet |
equals, hashCode |
| Methods inherited from class java.util.AbstractCollection |
toString |
| Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
map
protected java.util.concurrent.ConcurrentHashMap<E,java.lang.Object> map
ConcurrentHashSet
public ConcurrentHashSet()
size
public int size()
- Specified by:
size in interface java.util.Collection<E>- Specified by:
size in interface java.util.Set<E>- Specified by:
size in class java.util.AbstractCollection<E>
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty in interface java.util.Collection<E>- Specified by:
isEmpty in interface java.util.Set<E>- Overrides:
isEmpty in class java.util.AbstractCollection<E>
contains
public boolean contains(java.lang.Object o)
- Specified by:
contains in interface java.util.Collection<E>- Specified by:
contains in interface java.util.Set<E>- Overrides:
contains in class java.util.AbstractCollection<E>
iterator
public java.util.Iterator<E> iterator()
- Specified by:
iterator in interface java.lang.Iterable<E>- Specified by:
iterator in interface java.util.Collection<E>- Specified by:
iterator in interface java.util.Set<E>- Specified by:
iterator in class java.util.AbstractCollection<E>
toArray
public java.lang.Object[] toArray()
- Specified by:
toArray in interface java.util.Collection<E>- Specified by:
toArray in interface java.util.Set<E>- Overrides:
toArray in class java.util.AbstractCollection<E>
toArray
public <T> T[] toArray(T[] a)
- Specified by:
toArray in interface java.util.Collection<E>- Specified by:
toArray in interface java.util.Set<E>- Overrides:
toArray in class java.util.AbstractCollection<E>
add
public boolean add(E o)
- Specified by:
add in interface java.util.Collection<E>- Specified by:
add in interface java.util.Set<E>- Overrides:
add in class java.util.AbstractCollection<E>
remove
public boolean remove(java.lang.Object o)
- Specified by:
remove in interface java.util.Collection<E>- Specified by:
remove in interface java.util.Set<E>- Overrides:
remove in class java.util.AbstractCollection<E>
containsAll
public boolean containsAll(java.util.Collection<?> c)
- Specified by:
containsAll in interface java.util.Collection<E>- Specified by:
containsAll in interface java.util.Set<E>- Overrides:
containsAll in class java.util.AbstractCollection<E>
addAll
public boolean addAll(java.util.Collection<? extends E> c)
- Specified by:
addAll in interface java.util.Collection<E>- Specified by:
addAll in interface java.util.Set<E>- Overrides:
addAll in class java.util.AbstractCollection<E>
retainAll
public boolean retainAll(java.util.Collection<?> c)
- Specified by:
retainAll in interface java.util.Collection<E>- Specified by:
retainAll in interface java.util.Set<E>- Overrides:
retainAll in class java.util.AbstractCollection<E>
removeAll
public boolean removeAll(java.util.Collection<?> c)
- Specified by:
removeAll in interface java.util.Collection<E>- Specified by:
removeAll in interface java.util.Set<E>- Overrides:
removeAll in class java.util.AbstractSet<E>
clear
public void clear()
- Specified by:
clear in interface java.util.Collection<E>- Specified by:
clear in interface java.util.Set<E>- Overrides:
clear in class java.util.AbstractCollection<E>