私は、正確に似ているConcurrentSkipListSetが線形size演算がない特定のデータ構造を探しています。これは、より大きなセットに対して頻繁に呼び出される可能性があります。
については知ってCollections.synchronizedNavigableSet(new TreeSet())いますが、同期された反復:
synchronized (set) {
Iterator<T> iter = set.iterator();
while (iter.hasNext())
iter.next();
}
かなり遅いです。
では、 Apache Commons や GuavaNavigableSetなど、まったく同じですConcurrentSkipListSetが、線形操作がない実装について知っていますか? sizeまたは、セットを別の方法で反復する必要がありますか?