Redis的DISCARD命令用于終止當(dāng)前正在執(zhí)行的寫操作(例如命令寫入、哈希表寫入、列表寫入等)。當(dāng)客戶端向Redis發(fā)送DISCARD命令時(shí),Redis會(huì)立即停止處理當(dāng)前正在執(zhí)行的寫操作,并將已經(jīng)執(zhí)行的部分寫入到持久化存儲(chǔ)中(如果有的話)。需要注意的是,DISCARD命令不會(huì)撤銷已經(jīng)完成的寫操作。
DISCARD命令的主要作用是在某些情況下強(qiáng)制終止當(dāng)前事務(wù),例如在事務(wù)執(zhí)行過程中檢測到錯(cuò)誤或者需要取消事務(wù)時(shí)。需要注意的是,DISCARD命令只能用于事務(wù)模式(MULTI、EXEC、WATCH等命令),在普通模式下使用DISCARD命令會(huì)導(dǎo)致錯(cuò)誤。