一般意义上的可重入锁就是ReentrantLock

http://www.cnblogs.com/hongdada/p/6057370.html

广义上的可重入锁是指:

可重入锁,也叫做递归锁,指的是同一线程 外层函数获得锁之后 ,内层递归函数仍然有获取该锁的代码,但不受影响。

在JAVA环境下 ReentrantLock 和synchronized 都是 可重入锁

代码:

public class Main {
    public static void main(String[] args)   {
        Test ss=new Test();
        new Thread(ss).start();
        new Thread(ss).start();
        new Thread(ss).start();
    }
}

class Test implements Runnable{

    public synchronized void get(){
        System.out.println(Thread.currentThread().getId());
        set();
    }

    public synchronized void set(){
        System.out.println(Thread.currentThread().getId());
    }

    @Override
    public void run() {
        get();
    }
}
11
11
13
13
12
12
View Code

相关文章:

  • 2021-05-22
  • 2022-03-03
  • 2021-04-24
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-10-03
  • 2021-12-16
  • 2022-12-23
  • 2021-07-04
  • 2021-12-23
相关资源
相似解决方案