Java中每一个对象都有一把独占锁。独占锁只限制线程对它的同步方法的访问,对非同步方法,独占锁没有意义。
synchronized是java中解决同步问题的一个方法。synchronized可以用来修饰方法,这样的方法就是同步方法。一个对象里可以有任意多个同步方法。任意时间里只能有一个线程访问这些同步方法。例如,线程T1在访问同步方法M1,此时还有一个同步方法M2无人访问,但是由于已经有一个线程正在访问这个对象的同步方法M1,所以试图访问M2的线程将被阻塞。直到T1对M1的访问结束。
(..More)
最新评论