java中的锁
青梅绿茶zz
这个世界很多知识是几句话就能把原理说清楚的,但是大多时候却没有人用通俗易懂的几句话把它说明白。
展开
-
java中的类锁与对象锁
在java中使用synchronized进行同步,锁的类型有类锁与对象锁之分。 一、对象锁 当多个线程操作同一个实例的时候才产生作用。 1、修饰代码块 使用this:属于对象锁 public void do() { synchronized (this) { // this:属于对象锁 与public synchronized void doVoid() { } ...原创 2018-09-25 21:59:06 · 592 阅读 · 0 评论 -
java中ReentrantLock的公平锁与非公平锁
大家都知道ReentrantLock是基于jdk层面实现的可重入锁,使用的时候有公平锁与非公平锁之分,默认采用非公平锁。那么公平锁与非公平锁的机制有何区别呢?非公平锁的机制为什么会提高性能呢? 在这里不讨论两种锁的具体实现,只讲其思想。 1、首先两者都维护一个线程等待队列,所有没获取到锁的线程都被挂起并进入这个队列等待。 2、区别是: ...原创 2018-09-27 11:59:16 · 229 阅读 · 0 评论