【伯乐木马源码】【期末javaee系统源码】【dubbo源码怎么发布】rediswatch源码

2024-11-19 00:39:50 来源:源码运动 分类:知识

1.Mulit ComWatch的使用

rediswatch源码

源码伯乐木马源码

Mulit ComWatch的使用

源码伯乐木马源码

       1. 执行 watch key 监控事务中要操作的字段

源码伯乐木马源码

       2. 执行 multi 开启事务

源码伯乐木马源码

       3. 写入具体的业务操作

源码伯乐木马源码

       4. 执行 exec 并返回执行结果

源码伯乐木马源码

       é¦–å…ˆ watch 监控 key 所起的作用实际上是一个乐观锁,它所监控的是在事务期间有没有其他客户端对所监控的值进行修改,通过REDIS_DIRTY_CAS作为标志位,如果key对应的值被其他客户端修改了则开启REDIS_DIRTY_CAS,如果没有被修改则不开启REDIS_DIRTY_CAS。

源码伯乐木马源码

       ç„¶åŽ multi 的作用是开启事务,如果执行了 multi 则表示开启事务,那么接下来发送到客户端的命令不会立即执行,而是被加入到一个FIFO的队列中,直到遇到 exec 命令,则队列中的命令会依次执行并根据先进先出的顺序返回执行结果。

源码伯乐木马源码

       æ‰§è¡Œ exec 命令时,首先会判断REDIS_DIRTY_CAS是否开启,如果开启,说明key的值已经被其他客户端修改过了,这时就不会再执行事务队列中的命令而是会返回(nil),如果REDIS_DIRTY_CAS没有开启,说明在执行事务期间key没有被修改,则继续执行事务队列并返回执行结果。

源码伯乐木马源码

       è¿˜æœ‰ä¸€ç‚¹ï¼Œä¸€ä¸ªwatch对应的是一个事务,再开启一个事务时需要提前设置watch.

源码伯乐木马源码

本文地址:http://8o.net.cn/news/62d151798420.html 欢迎转发