From 4049acd7f77e48c1ec56c8a0374b70efc2462d47 Mon Sep 17 00:00:00 2001 From: Peridot Date: Wed, 19 Jul 2023 16:09:30 +0200 Subject: [PATCH] Use ConcurrentHashMap in ClassCache to allow concurrent injection --- .../java/org/panda_lang/utilities/inject/ClassCache.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/di/src/main/java/org/panda_lang/utilities/inject/ClassCache.java b/di/src/main/java/org/panda_lang/utilities/inject/ClassCache.java index b9863dc..a972b79 100644 --- a/di/src/main/java/org/panda_lang/utilities/inject/ClassCache.java +++ b/di/src/main/java/org/panda_lang/utilities/inject/ClassCache.java @@ -4,18 +4,18 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.Arrays; -import java.util.HashMap; import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; import org.panda_lang.utilities.inject.annotations.AutoConstruct; import org.panda_lang.utilities.inject.annotations.Inject; import panda.std.Pair; final class ClassCache { - private static final Map, Field[]> CACHED_FIELDS = new HashMap<>(); - private static final Map, Field[]> INJECTOR_CACHED_FIELDS = new HashMap<>(); + private static final Map, Field[]> CACHED_FIELDS = new ConcurrentHashMap<>(); + private static final Map, Field[]> INJECTOR_CACHED_FIELDS = new ConcurrentHashMap<>(); - private static final Map, Class>, Method[]> CACHED_ANNOTATED_METHODS = new HashMap<>(); + private static final Map, Class>, Method[]> CACHED_ANNOTATED_METHODS = new ConcurrentHashMap<>(); private ClassCache() { }