- 1、悲观锁:
- 认为多线程操作数据会导致数据出错,所以每次有一个线程操作数据时,都会先将数据锁住,再做修改,只有上一个线程释放资源锁之后,下一个线程才能操作数据(无论读写)。
- 例子
- JAVA的关键字synchronized
- MySQL的select xxx for update
- 缺点:
- 效率低下
- 长事务会导致开销无法忍受
- 优点:
- 安全性高,适用于写多读少的情况
- 2、乐观锁:
乐观锁、悲观锁简单总结
最新推荐文章于 2024-07-26 12:28:02 发布