标签:
•1.依靠对象锁锁定
初始化一个对象时,自动有一个 对象锁。
synchronized {普通方法}依靠对象锁工作,多线程访问synchronized方法,一旦某个进程抢得锁之后,其他的进程只有排队对待。
synchronized void method{}功能上,等效于:
void method{
synchronized(this) {
...
}
}
•2.针对每个类,也有一个锁(作为类的Class对象的一部分),
所以synchronized static方法可以在类范围内防止对static数据的并发访问。
synchronized {static方法} 此代码块等效于:
void method{
synchronized(Obj.class)
}
}
使用该类的类对象的锁定去做线程的共享互斥
java编程思想 p677(p713)
http://www.cnblogs.com/yanghuahui/p/3365922.html#undefined
标签:
原文地址:http://www.cnblogs.com/ydxblog/p/5594684.html