美文网首页
加的锁怎么没看到释放

加的锁怎么没看到释放

作者: 孤远 | 来源:发表于2019-01-09 19:17 被阅读0次

    这个是db级的锁(术语叫悲观锁,再术语叫排它锁),事务结束(提交、回滚或者链接断开)之后自行释放。

    如何加的锁?

    select .... for update

    注意: 这种方式的锁必须使用在事务的上下文当中。

    事务呢?

    如果是纯SQL会话,那么就是数据库的原语(即首先set autocommit=0,然后begin,然后执行几条sql命令,然后commit);

    如果是上层用的ORM(比如hibernate)以及Spring,那么就用Spring的@Transactional注解实现整个事务的逻辑,隔离级别设置为RC(即不可重复读,Read_Commit)。

    扩容流程为什么要加锁?

    为了并发控制。

    相关文章

      网友评论

          本文标题:加的锁怎么没看到释放

          本文链接:https://www.haomeiwen.com/subject/eqzgrqtx.html