常用设计网站有哪些软件,常州网站推广软件,网站怎么做播放器,莱芜都市网论坛悲观锁和乐观锁#xff0c;并不是 MySQL 或者数据库中独有的概念#xff0c;而是并发编程的基本概念。
主要区别在于#xff0c;操作共享数据时#xff0c;“悲观锁”认为数据出现冲突的可能性更大#xff0c;而“乐观锁”则是认为大部分情况不会出现冲突#xff0c;进而…悲观锁和乐观锁并不是 MySQL 或者数据库中独有的概念而是并发编程的基本概念。
主要区别在于操作共享数据时“悲观锁”认为数据出现冲突的可能性更大而“乐观锁”则是认为大部分情况不会出现冲突进而决定是否采取排他性措施。
反映到 MySQL 数据库应用开发中悲观锁一般就是利用类似 SELECT … FOR UPDATE 这样的语句对数据加锁避免其他事务意外修改数据。
乐观锁则与 Java 并发包中的 AtomicFieldUpdater 类似也是利用 CAS 机制并不会对数据加锁而是通过对比数据的时间戳或者版本号来实现乐观锁需要的版本判断。