乐观锁和悲观锁

乐观锁:顾名思义,就是每次拿数据的时候都觉得别人不会修改,所以不会上锁,但是在更新的时候会判断一下,在此期间有没有去更新这个数据,可以使用版本号等机制.乐观锁适用于多读的应用类型,这样可以提高吞吐量,像数据库如果提供类似于write_condition机制的都是提供的乐观锁.

悲观锁:就是每次拿数据都觉得别人会修改,所有每次都上锁,这样别人想拿数据必须等他释放,传统的关系数据库就是这种锁机制,比如行锁,表锁,写锁,都是在操作之前锁上.

原文地址:https://www.cnblogs.com/gudulijia/p/5664193.html