在监视器(Monitor)内部,是如何做线程同步的?程序应该做哪种级别的同步?
Posted freak-lew
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在监视器(Monitor)内部,是如何做线程同步的?程序应该做哪种级别的同步?相关的知识,希望对你有一定的参考价值。
在Java虚拟机中,每个对象(object和class)通过某种逻辑关联监视器,每个监视器和一个对象引用相关联,为了实现监视器的互斥功能,每个对象都关联着一把锁。
一旦方法或者代码块被synchronized修饰,那么这个部分就放入了监视器的监视区域,确保一次只有一个线程执行该部分代码,线程必须在获取锁之前不允许执行该部分代码。
Java提供了显示监视器(Lock)和隐式监视器(synchronized)两种锁方案。
以上是关于在监视器(Monitor)内部,是如何做线程同步的?程序应该做哪种级别的同步?的主要内容,如果未能解决你的问题,请参考以下文章