2

java.util.concurrent.BlockingQueue 是否有任何有效的(不同步所有内容)实现允许组合条目?

通过组合,我的意思是将传入项目与队列中现有的“相等”条目(如果有的话)合并,否则像往常一样在末尾添加项目。

4

3 回答 3

2

检查这个答案:并发集队列。如果合并的意思是忽略与队列中已经存在的元素相等的元素,则它可能与您的问题重复。

于 2012-07-16T09:40:39.703 回答
1

BlockingQueue运动一种contains方法。随意使用它,但不要忘记同步。contains是 O(n) fx in LinkedBlockingDeque,因此您可以尝试使用更有效的方法 a HashSet

于 2012-07-16T09:42:44.530 回答
0

I can't see combining events if timestamp and source are two of its attributes. Unless the same user sent two events within a nanosecond or less of each other, I don't believe they can be considered equal and should not be combined.

于 2012-07-16T09:36:46.377 回答