将始终有 500 多个线程同时将唯一对象上传到存储桶。
在这种情况下,我应该使用哪个数据结构/类来在 java 中实现存储桶。
供参考:
我尝试使用 ArrayList、Vector、ConcurrentHashMap、ArrayBlockingQueue、LinkedBlockingQueue。
ArrayList 失败,因为它不是线程安全的。Vector 会消耗更多的插入时间。(因为获得监视器锁定的等待时间很长)
...最后,我使用了 ArrayBlockingQueue,这听起来很适合比较其他人。
如果这种情况下存在任何其他好的类/数据结构,请建议我。