您的位置: 网站首页> it面试题> 当前文章
Java中synchronized关键字的工作原理是什么?
老董-我爱我家房产SEO2024-03-08164围观,113赞
1、锁的获取和释放: 当线程进入synchronized标记的方法或代码块时,它会自动获取锁;当线程离开synchronized区域时,无论是由于方法正常结束或是抛出异常,它都会自动释放锁。
2、对象监视器: synchronized关键字依赖于“对象监视器”机制来完成线程间的同步。每个对象都与一个监视器相关联,当synchronized作用于实例方法时,锁定的是执行该方法的对象;当其作用于静态方法时,锁定的是类的Class对象;当其作用于代码块时,锁定的是括号里面的对象。
3、可重入性: Java中的synchronized锁是可重入的。这意味着如果一个Java线程进入了代码中的synchronized方法,并且在该方法中调用了另外一个synchronized方法,则该线程可以直接进入该方法,不会被阻塞。
4、内存可见性: synchronized还可以确保进入synchronized块的每个线程,都能看到由同一个锁保护之前的所有修改效果。

很赞哦!
python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群
相关文章
文章评论
-
Java中synchronized关键字的工作原理是什么?文章写得不错,值得赞赏


