gpt4 book ai didi

java - 使用稀疏写入和多次读取来编写 HashMap 的最佳方法

转载 作者:行者123 更新时间:2023-11-29 03:11:55 25 4
gpt4 key购买 nike

我需要用 Java 编写一个 HashMap ,主要用于跨线程读取。考虑这样一种情况,客户端只写入 HashMap 一次(最多只有 10 或 15 个条目),但键和值来自客户端。这意味着我事先不知道键/值对。一次写入后,它们同时读取多次。

更像下面的代码片段以一种有效的方式:

public String getPS(String query) {
//put into map if not present
if(psMap.get(query) == null){
synchronized (this) {
if(psMap.get(query) == null){
//test1 is just a sample value
psMap.put(query,"test1");
}
}
}
return psMap.get(query);

}

最佳答案

ConcurrentHashMap 的实现假定最常见的操作是检索值,因此它已经针对 get 操作进行了优化。它甚至具有 putIfAbsent 方法,因此您不必自己实现它。

关于java - 使用稀疏写入和多次读取来编写 HashMap 的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28872112/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com