一个类在可以被多个线程安全调用时就是线程安全的。
线程安全不是一个非真即假的命题,可以将共享数据按照安全程度的强弱顺序分成以下五类: 不可变、绝对线程安全、相对线程安全、线程兼容和线程对立。
不可变的类型:
- final 关键字修饰的基本数据类型
- String
- 枚举类型
-
Number 部分子类,如 Long 和 Double 等数值包装类型,BigInteger 和 BigDecimal 等大数据类型。但同为 Number 的原子类 AtomicInteger 和 AtomicLong 则是可变的。
-
栈封闭
- 线程本地存储
- 可重入代码
Original: https://www.cnblogs.com/winter0730/p/15319268.html
Author: cos晓风残月
Title: Java基础七—Java并发基础
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/576268/
转载文章受原作者版权保护。转载请注明原作者出处!