我正在寻找一个与线性运算完全相同ConcurrentSkipListSet
但没有线性size
运算的特定数据结构,对于较大的集合,它可能经常被调用。
我知道Collections.synchronizedNavigableSet(new TreeSet())
,但是同步迭代:
synchronized (set) {
Iterator<T> iter = set.iterator();
while (iter.hasNext())
iter.next();
}
很慢。
那么,您是否知道一个与线性操作NavigableSet
完全相同ConcurrentSkipListSet
但没有线性size
操作的实现,例如在 Apache Commons、Guava 中?或者我应该对集合进行不同的迭代?