具有固定大小的并发映射
2022-09-04 03:59:38
我需要一张具有以下要求的地图:
它应该是高度并发的。和 方法可以由多个线程同时调用。
put()
get()
remove()
它应该是固定的。如果大小达到最大值(例如10000),则不允许在地图中添加新条目。它不能是LRU缓存,其中最旧的条目在达到最大大小时被删除。
HashMap
ConcurrentHashMap
可能满足#1。但是,不确定如何在不影响并发的情况下实现#2(添加一个自定义方法,仅当大小小于最大大小时才会添加到映射中,需要“同步”。这将破坏使用并发的目的)。ConcurrentHashMap
put()
HashMap
请让我知道你的想法。