Redis UNLINK 命令类似与 DEL 命令,表示删除指定的 key,如果指定 key 不存在,命令则忽略;但是 UNLINK 命令不同与 DEL 命令在于它是异步执行的,因此它不会阻塞。UNLINK 命令是非阻塞删除,非阻塞删除简言之,就是将删除操作放到另外一个线程(而非 Redis 主线程)去处理。
命令格式
UNLINK key [key ...]
可用版本:>=4.0.0
时间复杂度:当删除每个指定 key 的时候,时间复杂度为 O(1),不管 key 值多大;然后在另一个线程回收内存操作时候,时间复杂度为 O(N),其中 N 为分配给删除对象值的内存分配数。
命令返回值
UNLINK 命令返回可删除 key 的个数。
示例
redis> SET key1 hello
OK
redis> SET key2 world
OK
redis> SET key3 sun
OK
redis> UNLINK key1 key2 key3
(integer) 3
redis> GET key1
(nil)