Java并发编程实践---第二章:线程安全性
2017-06-21 10:39
253 查看
如果当多个线程访问同一个可变的状态变量时没有使用合适的同步,那么程序就会出现错误。有三种方式可以修复这个问题:
1.不在线程之间共享该状态变量。
2.将状态变量修改为不可变的变量。
3.在访问状态变量时使用同步。
线程安全性:当多个线程访问某个类时,这个类始终都能表现出正确的行为,那么就称这个类是线程安全的。
重入:当某个线程请求一个由其他线程持有的锁时,发出请求的线程就会阻塞。然而,由于内置锁是可重入的,因此如果某个线程视图获取一个已经由它自己持有的锁,那么这个请求就会成功。“重入”意味着获取锁的操作粒度是“线程”,而不是“调用”。
1.不在线程之间共享该状态变量。
2.将状态变量修改为不可变的变量。
3.在访问状态变量时使用同步。
线程安全性:当多个线程访问某个类时,这个类始终都能表现出正确的行为,那么就称这个类是线程安全的。
重入:当某个线程请求一个由其他线程持有的锁时,发出请求的线程就会阻塞。然而,由于内置锁是可重入的,因此如果某个线程视图获取一个已经由它自己持有的锁,那么这个请求就会成功。“重入”意味着获取锁的操作粒度是“线程”,而不是“调用”。
相关文章推荐
- [Java 并发] Java并发编程实践 思维导图 - 第二章 线程安全性
- [Java 并发] Java并发编程实践 思维导图 - 第二章 线程安全性
- Java并发编程实践笔记 第一部分 基础知识 第二章 线程安全性
- Java 并发编程实践基础 读书笔记: 第二章 构建线程安全应用程序
- 【Java并发编程实践】线程安全性、对象的共享和对象的组合
- java并发编程实践之线程安全性
- Java并发编程实践-第二章-线程安全
- java多线程与并发之java并发编程实践(七)
- java并发编程实践笔记
- JAVA并发编程实践- 线程的优点
- java多线程与并发之java并发编程实践(八)
- 编程实践笔记{Java 线程 并发处理 Webservice}
- java并发编程实践 笔记(1)
- JAVA并发编程实践--读书笔记
- java并发编程实践-性能和可伸缩性
- Java并发编程实践-第十三章-Explicit Locks
- java多线程与并发之java并发编程实践(一)
- 编程实践笔记{Java 线程 并发处理 Webservice}
- java多线程与并发之java并发编程实践(三)
- java多线程与并发之java并发编程实践(四)