5

我想知道除了使用and之synchronized类的数据结构或使用or之类的包装器之外,还有其他方法可以使非同步数据结构成为线程安全的吗?HashtableVectorCollections.synchronizedList(List<T> arg)Collections.synchronizedMap(Map<K,V> arg)

面试时有人问我如何使 hashmap 线程安全,我告诉他使用HashtableConcurrentHashMap使用Collections.synchronizedMap包装器,但是,这些答案似乎不是他想要的

4

2 回答 2

4

是的,你可以让它不可变。这实际上是在许多情况下使代码线程安全的好方法。

于 2012-08-20T20:58:23.790 回答
2

是的。如果您自己进行构造的同步。但由于明显的原因,不建议这样做......

于 2012-08-20T20:55:16.043 回答