我正在使用 LinkedHashMap 并且环境是多线程的,所以这个结构需要是线程安全的。在特定事件期间,我需要阅读整个地图推送到数据库并清除所有内容。
大多数时候,只有写发生在这张地图上。此地图有 50 个条目的限制。
我正在使用 Oracle MAF,它没有可用的 Collections.syncronizedMap。那么,我需要在同步块中放入哪些内容以确保写入和读取不会击中我 concurrentModificationException 等
几个要求:
- 我需要把它表现得像一个循环队列,所以覆盖 LinkedHashMap 的 removeEldestEntry 方法。
- 我需要保留订单