1:volatile应用
(1)多线程并发编程中synchronized和volatile都扮演着重要的角色,volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。volatile不会引起线程上线文的切换和调度。
2:synchronized的实现原理与应用
(1)java中的每一个对象都可以作为锁。表现为3中形式:
a:对于普通同步方法,锁是当前实例对象。
b:对于静态同步方法,锁是当前类的Class对象。
c:对于同步方法块,锁是Synchronized括号里配置的对象。
synchronized保证:任何对象都有一个monitor与之关联,当且一个monitor被持有后,它将处理锁定状态。
(2)jdk1.6中,锁一共有4中状态,级别从低到高依次是:无锁状态、偏向锁状态、轻量级锁状态和重量级锁状态。
(3)偏向锁
3:原子操作的实现原理?(思考)