什么叫做线程安全的类
- 这个类中的所有方法,都使用了 sychronized 关键字来修饰,保证使用这些方法的时候,多个线程之间都是安全的,同步的。
线程安全的类
StringBuffer
Hashtable
Vector
线程不安全的类
StringBuilder
HashMap
ArrayList
如果不涉及到同步问题,建议使用线程不安全的类来代替线程安全的类,因为这样可以节省资源,运行效率会更高。
实际应用
- 实际应用中,通常使用 Collections 中的 :
synchronizedMap
synchronizedSet
synchronizedList
来实现一个非线程安全的类的同步安全问题。
ArrayList
本来不是线程安全的类,通过这样包装之后,就变成了一个线程安全的类。