问题描述
我有一个parallelHashMap,其中我的一个线程正在连续写入该映射,同时有300多个线程正在从该映射中读取值。
问题:
- 在这种多线程方案中,并发HashMap数据结构是最好的吗?如果不是,那么哪一个更快,并会带来更好的性能?
- 要实现这种情况,有没有比任何设计模式更好的方法了。
- 在系统中运行这些线程数是个好主意吗?
- 是否还有其他声明consurrentHashMap的方法,以便获得最佳性能。
示例:我们可以如下声明具有不同参数的map。目前,我正在使用最后一个选项。
1. Map<String,Integer> map = new ConcurrentHashMap<String,Integer>(initialCapacity,loadFactor,concurrencyLevel);
2. Map<String,loadFactor);
3. Map<String,Integer>();
注意:
- 映射的大小等于读取线程数。因此,如果从我的地图读取300个线程,则地图的大小为300(包含300个键值对值)。
- 具有32 GB RAM的64位操作系统。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)