https://redis.io/commands/scan
可以看到:
sscan的返回結果,有兩部分,
第一部分 是一個數字。其實代表一個游標。
第二部分 是結果。
scan是以游標為基礎,每次使用scan(包括sscan),以游標0開始,然后命令會返回一個新的游標;如果新的游標不是0,表示遍歷還沒有結束,要使用新的游標作為參數,繼續輸入獲得后面的結果。
比如下面這個 count 1的時候,遍歷沒有結束,就會返回非0的游標。
> smembers myset 1) "one" 2) "two" > sscan myset 0 match * count 1 1) "2" 2) 1) "one" > sscan myset 2 match * count 1 1) "3" 2) 1) "two" > sscan myset 3 match * count 1 1) "0" 2) (empty list or set)
官網的解釋可以查看這里: