synchronized的作用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35427437/article/details/88634981

     Java中每个对象都有一个锁或者称为监视器,当访问某个对象的synchronized方法时,表示将该对象上锁,而不仅仅是为该方法上锁。

这样如果一个对象的synchronized方法被某个线程执行时,其他线程无法访问该对象的任何synchronized方法(但是可以调用其他非synchronized的方法)。直至该synchronized方法执行完

静态的synchronized方法调用情况:

    当调用一个对象的静态synchronized方法时,它锁定的并不是synchronized方法所在的对象而是synchronized方法所在对象对应的Class对象。这样,其他线程就不能调用该类的其他静结论:执行静态synchronized方法锁方法所在对象,执行非静态

  synchronized方法锁方法所在对象对应的Class对象。态synchronized方法了,但是可以调用非静态的synchronized方法。

  synchronized,因为使用起来非常简单所以排在了第一个,并且在jdk1.6以后其性能得到了极大优化使得其使用更加广泛。

猜你喜欢

转载自blog.csdn.net/qq_35427437/article/details/88634981