ReentrantLock锁ReentrantLock是Java中常用的锁,属于乐观锁类型,多线程并发情况下。能保证共享数据安全性,线程间有序性lock的时候可能被其他线程获得所,那么此线程会阻塞自己,关键原理底层用到Unsafe类的API: CAS和park使用在多线程环境下使用,创建锁对象,调用lock()获取锁开始处理逻辑,处理完unlock()释放锁。注意使用的时候lock和unlock必须成对出现,不然可能出现死锁或者严重堵塞的情况unlock执行完代码后,释放锁,让其他线程去获取,需要注意的是,多个线程使用的锁对象必须是同一个。
暂无评论