使用Java。
我为一些计算等记录小对象,我只需要最后的 x 千个。所以我想将第一个释放给垃圾收集器。但是由于从 ArrayLists 中删除是昂贵的......
以下是重要的(不能改变)
- 没有数据库
- 对象是同一类型
- 每秒最多 50,000 个对象
- 性能很重要
- 快速迭代整个列表很重要
- 随机访问也很重要
这可以改变:
- 现在使用
ArrayList<MyObject>
- 限制:100,000 个对象(停止记录,但必须继续)
我的猜测:
- 链表
- 环形缓冲区
- ???
我能做些什么来快速迭代并同时快速释放旧对象?