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:
- Iterable<E>, Collection<E>, Set<E>
public class ConcurrentHashSet<E>
- extends 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
map
protected ConcurrentHashMap<E,Object> map
ConcurrentHashSet
public ConcurrentHashSet()
ConcurrentHashSet
public ConcurrentHashSet(int concurrencyLevel)
- Parameters:
concurrencyLevel - passed in to the underlying CHM. See ConcurrentHashMap.ConcurrentHashMap(int, float, int) javadocs for details.
ConcurrentHashSet
public ConcurrentHashSet(int initSize,
float loadFactor,
int concurrencyLevel)
- Params passed in to the underlying CHM. See
ConcurrentHashMap.ConcurrentHashMap(int, float, int) javadocs for details.
size
public int size()
- Specified by:
size in interface Collection<E>- Specified by:
size in interface Set<E>- Specified by:
size in class AbstractCollection<E>
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty in interface Collection<E>- Specified by:
isEmpty in interface Set<E>- Overrides:
isEmpty in class AbstractCollection<E>
contains
public boolean contains(Object o)
- Specified by:
contains in interface Collection<E>- Specified by:
contains in interface Set<E>- Overrides:
contains in class AbstractCollection<E>
iterator
public Iterator<E> iterator()
- Specified by:
iterator in interface Iterable<E>- Specified by:
iterator in interface Collection<E>- Specified by:
iterator in interface Set<E>- Specified by:
iterator in class AbstractCollection<E>
toArray
public Object[] toArray()
- Specified by:
toArray in interface Collection<E>- Specified by:
toArray in interface Set<E>- Overrides:
toArray in class AbstractCollection<E>
toArray
public <T> T[] toArray(T[] a)
- Specified by:
toArray in interface Collection<E>- Specified by:
toArray in interface Set<E>- Overrides:
toArray in class AbstractCollection<E>
add
public boolean add(E o)
- Specified by:
add in interface Collection<E>- Specified by:
add in interface Set<E>- Overrides:
add in class AbstractCollection<E>
remove
public boolean remove(Object o)
- Specified by:
remove in interface Collection<E>- Specified by:
remove in interface Set<E>- Overrides:
remove in class AbstractCollection<E>
containsAll
public boolean containsAll(Collection<?> c)
- Specified by:
containsAll in interface Collection<E>- Specified by:
containsAll in interface Set<E>- Overrides:
containsAll in class AbstractCollection<E>
addAll
public boolean addAll(Collection<? extends E> c)
- Specified by:
addAll in interface Collection<E>- Specified by:
addAll in interface Set<E>- Overrides:
addAll in class AbstractCollection<E>
retainAll
public boolean retainAll(Collection<?> c)
- Specified by:
retainAll in interface Collection<E>- Specified by:
retainAll in interface Set<E>- Overrides:
retainAll in class AbstractCollection<E>
removeAll
public boolean removeAll(Collection<?> c)
- Specified by:
removeAll in interface Collection<E>- Specified by:
removeAll in interface Set<E>- Overrides:
removeAll in class AbstractSet<E>
clear
public void clear()
- Specified by:
clear in interface Collection<E>- Specified by:
clear in interface Set<E>- Overrides:
clear in class AbstractCollection<E>
Copyright © 2009 JBoss, a division of Red Hat. All Rights Reserved.