Java Synchronized 方法或者代码块
Synchronized 代码块或者 Synchronized 方法
关键机制
1. 一个对象锁(某对象intance的锁)在同一时刻只能由一个线程拥有.
2. object.wait()方法,会释放该对象锁,直到有其它线程调用对象的notify()唤醒该线程,才能继续获取对象锁,并继续执行。
3. object.notify()方法, 并不是马上就释放对象锁的,而是在相应的synchronized(){}语句块执行结束,自动释放锁后,JVM会在调用了wait()对象锁的线程中随机选取一线程,赋予其对象锁,唤醒线程,继续执行。
参考: http://www.cnblogs.com/dolphin0520/p/3923737.html
http://blog.csdn.net/zyplus/article/details/6672775

浙公网安备 33010602011771号