This is an automated email from the ASF dual-hosted git repository. fschumacher pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/jmeter.git
The following commit(s) were added to refs/heads/master by this push: new 20bc145 Construct an InheritableThreadLocal instead of a simple ThreadLocal 20bc145 is described below commit 20bc14513b238f79d6190971e4617ac9c5f88c49 Author: Felix Schumacher <felix.schumac...@internetallee.de> AuthorDate: Sat May 9 11:25:22 2020 +0200 Construct an InheritableThreadLocal instead of a simple ThreadLocal The method withInitial is a static method on ThreadLocal and will create a normal ThreadLocal instance. We want an InheritableThreadLocal instance and have to use the old fashioned way of using an anonymous subclass for creation of initial values. --- .../org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/protocol/http/src/main/java/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java b/src/protocol/http/src/main/java/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java index b24cb66..ee79e64 100644 --- a/src/protocol/http/src/main/java/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java +++ b/src/protocol/http/src/main/java/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java @@ -438,9 +438,12 @@ public class HTTPHC4Impl extends HTTPHCAbstractImpl { /** * 1 HttpClient instance per combination of (HttpClient,HttpClientKey) */ - private static final ThreadLocal<Map<HttpClientKey, MutableTriple<CloseableHttpClient, AuthState, PoolingHttpClientConnectionManager>>> - HTTPCLIENTS_CACHE_PER_THREAD_AND_HTTPCLIENTKEY = - InheritableThreadLocal.withInitial(() -> new HashMap<>(5)); + private static final ThreadLocal<Map<HttpClientKey, MutableTriple<CloseableHttpClient, AuthState, PoolingHttpClientConnectionManager>>>HTTPCLIENTS_CACHE_PER_THREAD_AND_HTTPCLIENTKEY = new InheritableThreadLocal<Map<HttpClientKey, MutableTriple<CloseableHttpClient, AuthState, PoolingHttpClientConnectionManager>>>() { + @Override + protected Map<HttpClientKey, MutableTriple<CloseableHttpClient, AuthState, PoolingHttpClientConnectionManager>> initialValue() { + return new HashMap<>(5); + } + }; /** * CONNECTION_SOCKET_FACTORY changes if we want to simulate Slow connection