哪些是线程安全的?哪些是线程不安全的?
线程安全的集合类可以在多线程环境中安全地使用,而线程不安全的集合类在多线程环境中可能会导致不确定的行为。
线程安全
- Vector:Vector是一个古老的集合类,它的方法都是同步的,因此是线程安全的。然而相对较重
- HashTable:HashTable是一个古老的Map实现,其方法都是同步的,因此线程安全的,它的使用不太推荐,建议使用HashMap。
- Collections.synchronizedList Collections.synchronizedSet、Collections.synchronizedMap 这些方法可以将非线程安全的集合包装成线程安全的集合。
线程不安全
- ArrayList、LinkedList、HashSet、HashMap:这些集合类是非线程安全的。在多线程环境中,如果没有适当的同步措施,对这些集合的并发操作可能导致不确定的结果。
- TreeMap、TreeSet:虽然TreeMap和TreeSet是有序的集合,但它们也是非线程安全的。

浙公网安备 33010602011771号