可重入锁
reentrantlock是独占锁且可重入的 synchronized 也可以重入
可重入意思就是这个线程已经获取锁了,你再获取该锁还能获取 获取的还是原来的锁 不会出现问题 可以降低编程难度
代码如下:
new Thread(new Runnable() { @Override public void run() { synchronized (this) { System.out.println("第1次获取锁,这个锁是:" + this); int index = 1; while (true) { synchronized (this) { System.out.println("第" + (++index) + "次获取锁,这个锁是:" + this); } if (index == 10) { break; } } } } }).start();