ReentrantLock
ReentrantLock
用synchronized 保证 number 变量在线程中的原子性
使用ReentrantLock()对象进行加锁时,调用lock()方法开始unlock()释放
被加锁代码写在lock方法和unlock方法之间
减少锁粒度
所用ReentrantLock可重用锁,需要先创建锁对象,然后再调用lock方法,并在tryfinally中释放锁
lock