From 4bf930decba90d8740e015a9318a960f70ec1a59 Mon Sep 17 00:00:00 2001 From: Nathan Ridge Date: Tue, 24 Oct 2017 19:55:26 -0400 Subject: [PATCH] Bug 526391 - Make Database.stringCache a ConcurrentHashMap since it can be accessed concurrently by multiple threads Change-Id: I79b88197ade9831100b13e5429bfb62248a28f06 --- .../org/eclipse/cdt/internal/core/pdom/db/Database.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Database.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Database.java index 5c473cc974d..24bc9937b19 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Database.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Database.java @@ -26,8 +26,8 @@ import java.nio.channels.ClosedByInterruptException; import java.nio.channels.ClosedChannelException; import java.nio.channels.FileChannel; import java.util.ArrayList; -import java.util.HashMap; import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; import org.eclipse.cdt.core.CCorePlugin; import org.eclipse.core.runtime.CoreException; @@ -128,7 +128,7 @@ public class Database { } // a cache for strings which is used for btree lookups; soft refs ensure garbage collection - private final Map> stringCache = new HashMap<>(); + private final Map> stringCache = new ConcurrentHashMap<>(); private final ReferenceQueue stringDisposal = new ReferenceQueue<>(); /**