add SafeConcurrentHashMap

This commit is contained in:
Looly
2022-09-15 10:36:20 +08:00
parent cf0fc45080
commit 3b5ba16c93
41 changed files with 176 additions and 104 deletions

View File

@@ -1,6 +1,5 @@
package cn.hutool.extra.cglib;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.map.WeakConcurrentMap;
import cn.hutool.core.text.StrUtil;
import net.sf.cglib.beans.BeanCopier;
@@ -44,7 +43,7 @@ public enum BeanCopierCache {
*/
public BeanCopier get(final Class<?> srcClass, final Class<?> targetClass, final boolean useConverter) {
final String key = genKey(srcClass, targetClass, useConverter);
return MapUtil.computeIfAbsent(cache, key, (k) -> BeanCopier.create(srcClass, targetClass, useConverter));
return cache.computeIfAbsent(key, (k) -> BeanCopier.create(srcClass, targetClass, useConverter));
}
/**

View File

@@ -1,7 +1,6 @@
package cn.hutool.extra.script;
import cn.hutool.core.exceptions.UtilException;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.map.WeakConcurrentMap;
import cn.hutool.core.text.StrUtil;
@@ -31,7 +30,7 @@ public class ScriptUtil {
* @return {@link ScriptEngine} 实例
*/
public static ScriptEngine getScript(final String nameOrExtOrMime) {
return MapUtil.computeIfAbsent(CACHE, nameOrExtOrMime, (key) -> createScript(nameOrExtOrMime));
return CACHE.computeIfAbsent(nameOrExtOrMime, (key) -> createScript(nameOrExtOrMime));
}
/**