redis EXEC-Befehl
Übersetzungsergebnisse:
exec
Englisch [ɪgˈzek] US [ɪɡ'zek]
Abk.Execute-Ausführung; Executive-Ausführung
Plural: Execs
redis EXEC-BefehlSyntax
Funktion: Befehle innerhalb aller Transaktionsblöcke ausführen.
Syntax: EXEC
Erläuterung: Wenn ein bestimmter (oder ein bestimmter) Schlüssel vom WATCH-Befehl überwacht wird und es Befehle gibt, die sich auf diesen (oder diese) Schlüssel im Transaktionsblock beziehen, dann wird der EXEC Befehl Es wird nur ausgeführt und wirksam, wenn dieser (oder diese) Schlüssel nicht durch andere Befehle geändert wurden, andernfalls wird die Transaktion abgebrochen.
Verfügbare Versionen: >= 1.2.0
Zeitkomplexität: Die Summe der Zeitkomplexität aller Befehle innerhalb des Transaktionsblocks.
Rückgabe: Der Rückgabewert aller Befehle innerhalb des Transaktionsblocks, angeordnet in der Reihenfolge der Befehlsausführung.
Wenn der Vorgang unterbrochen wird, geben Sie den leeren Wert null zurück.
redis EXEC-BefehlBeispiel
# 事务被成功执行 redis> MULTI OK redis> INCR user_id QUEUED redis> INCR user_id QUEUED redis> INCR user_id QUEUED redis> PING QUEUED redis> EXEC 1) (integer) 1 2) (integer) 2 3) (integer) 3 4) PONG # 监视 key ,且事务成功执行 redis> WATCH lock lock_times OK redis> MULTI OK redis> SET lock "huangz" QUEUED redis> INCR lock_times QUEUED redis> EXEC 1) OK 2) (integer) 1 # 监视 key ,且事务被打断 redis> WATCH lock lock_times OK redis> MULTI OK redis> SET lock "joe" # 就在这时,另一个客户端修改了 lock_times 的值 QUEUED redis> INCR lock_times QUEUED redis> EXEC # 因为 lock_times 被修改, joe 的事务执行失败 (nil)