ThreadLocal中的多个对象

NIN*_*OOP 4 java multithreading thread-local

我们可以在一个中设置多个对象ThreadLocal吗?

Aar*_*lla 14

线程局部是当前线程的局部变量; 所以每个线程只获得一个值.但是值可以是一个实例,因此您可以将地图放在那里,例如,或者自定义类型,它会收集您想要的所有值.


Pet*_*rey 5

你可以有多个ThreadLocal,你可以在其中包含一个包含多个对象的对象.

例如

final ThreadLocal<Map<String, String>> localProperties = new ThreadLocal<Map<String, String>>() {
     public Map<String, String> initialValue() {
           return new LinkedHashMap<String, String>();
     }
});
Run Code Online (Sandbox Code Playgroud)