Collections.synchronizedCollection(Collection<T>t)
Collections.synchronizedList(List<T>list)
Collections.synchronizedMap(Map<K, V>map)
Collections.synchronizedSet(Set<T> t)
上面几个方法是Collections工具类将集合变为多线程安全集合的主要方法。
其原理也很简单。我们看一个Collections.synchronizedMap(Map<K, V> map)的实现,其他的原理一样。