美文网首页
12. 内部锁:synchronized关键字

12. 内部锁:synchronized关键字

作者: TheMrBigHead | 来源:发表于2018-12-11 11:15 被阅读0次

Java平台中的任何一个对象都有唯一一个与之关联的锁。这种锁被称为监视器(Monitor)或内部锁(Intrinsic Lock)。

内部锁是一种排他锁,能够保障原子性、可见性和有序性。

内部锁是通过synchronized关键字实现的

原理
image.png
同步方法

synchronized关键字修饰的方法。

// 实例方法
synchronized void aa() {
...
}

// 静态方法
static synchronized void bb() {
...
}
同步代码块

synchronized关键字修饰的代码块

synchronized(锁句柄) {
...
}
锁句柄

锁句柄是一个对象的引用(或者能够返回对象的表达式)

内部锁的使用并不会导致锁泄漏

临界区的代码即时抛出异常,也不会阻止内部锁的释放

内部锁的调度
image.png

相关文章

网友评论

      本文标题:12. 内部锁:synchronized关键字

      本文链接:https://www.haomeiwen.com/subject/ywzrhqtx.html