数据库悲观锁和乐观锁:
悲观锁是在并发操作过程中,如果有用户来操作这条数据,就要对这条数据加锁,直到他操作完成以后释放锁其他人才能在操作。
在数据库中使用select…for update会把数据给锁住。(锁也分行级锁和表级锁)
乐观锁是在并发操作的过程中,用户都能获取到这条数据,同时会拿到这条数据的一个版本号,此时比的就是操作速度了。在数据被修改以后数据的版本号就变了。而后一个用户在修改时发现之前获取到版本号(时间戳)和当前操作版本号不一样了,遂失败。
数据库悲观锁和乐观锁:
悲观锁是在并发操作过程中,如果有用户来操作这条数据,就要对这条数据加锁,直到他操作完成以后释放锁其他人才能在操作。
在数据库中使用select…for update会把数据给锁住。(锁也分行级锁和表级锁)
乐观锁是在并发操作的过程中,用户都能获取到这条数据,同时会拿到这条数据的一个版本号,此时比的就是操作速度了。在数据被修改以后数据的版本号就变了。而后一个用户在修改时发现之前获取到版本号(时间戳)和当前操作版本号不一样了,遂失败。