我有一个由Java 中的ConcurrentSkipListSet制成的对象 QueueSet
请注意,与大多数集合不同,size 方法不是恒定时间操作。由于这些集合的异步特性,确定当前元素的数量需要遍历元素,因此如果在遍历期间修改了此集合,则可能会报告不准确的结果。此外,不能保证以原子方式执行批量操作 addAll、removeAll、retainAll、containAll、equals 和 toArray。例如,与 addAll 操作同时运行的迭代器可能只查看一些添加的元素。
问题:对此有缺陷的完整性检查,if(!activeQueueSet.add(queue))
但正如您从文档中看到的那样,它是一个 O(n) 操作,即遍历整个集合,这在某种程度上误解了列表的状态很多次。我正在寻找一个万无一失的健全性检查。