java并发回答

java 线程安全比较重要的点:
 
在 java 编程中,记住这些关键点可以帮你避免一些严重的并发问题,比如条件竞争或死锁。
 
1)、不可变对象默认是线程安全的,因为他们一旦被创建就不会被修改。比如 String 是不可变对象,是线程安全的。只读、final 类型的变量也是线程安全的
为什么String是不可变:传参或者其他时候,不会像StringBuilder那样被其他线程改变了他值
https://blog.csdn.net/zhangjg_blog/article/details/18319521
 
2)、使用线程安全的类: Vector, Hashtable, ConcurrentHashMap, String etc.
 
3)、锁也是一种线程安全的方式
 
4) 、本地变量也是线程安全的,因为每个线程都有自己的变量 copy.使用本地变量是一种保证代码线程安全的好方法。(ThreadLocal)
 
5)、Volatile 关键字
 
 

猜你喜欢

转载自www.cnblogs.com/vhyc/p/9352622.html