我正在努力实现以下目标:
Map<Integer, Object>
(让我们说从现在开始Map1
和Map2
Object
始终会先插入Map1
Integer
插入AtomicInteger
时,Object
值都会以Map1
递增Object
获取第一个插入的Map1
并将其移至Map2
,然后使用Object
Object
删除Map2
并重复 Map1
是一种队列,Map2
包含所有正在运行的操作。运行操作量可以一次调整为1以上。
例如,我连续执行5个操作,运行操作的最大数量为4,顺序为:
将所有5个放入Map1
的0,1,2,3,4个ID中。然后应删除索引0,1,2,3并将其移至Map2
。当Object
的第一个Map2
准备好后,应将其移除,并将Map1
中的最后一个移至Map2
。
我尝试使用ConcurrentHashMap
,但是从最后插入的项目开始使用Iterator.next()
进行迭代,并在对象准备就绪时从Map2
删除项目时出现问题。
答案 0 :(得分:2)
Map1 is sort of a queue
使用阻塞队列,这是一种FIFO数据结构。