diff --git a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/DDCachingPoolStrategy.java b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/DDCachingPoolStrategy.java index 94cde8d482..64ec4f8870 100644 --- a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/DDCachingPoolStrategy.java +++ b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/DDCachingPoolStrategy.java @@ -82,14 +82,11 @@ public class DDCachingPoolStrategy implements PoolStrategy { return createCachingTypePool(bootstrapCacheProvider, classFileLocator); } - WeakReference loaderRef; - synchronized (loaderRefCache) { - loaderRef = loaderRefCache.getIfPresent(classLoader); + WeakReference loaderRef = loaderRefCache.getIfPresent(classLoader); - if (loaderRef == null) { - loaderRef = new WeakReference<>(classLoader); - loaderRefCache.put(classLoader, loaderRef); - } + if (loaderRef == null) { + loaderRef = new WeakReference<>(classLoader); + loaderRefCache.put(classLoader, loaderRef); } final int loaderHash = classLoader.hashCode();