- 2.0.0. 이후 버전에서 사용
- 시간복잡도 : O(1)
BRPOP은 RPOP의 블럭(Block) 버전이다. 기본적으로 RPOP 즉 리스트의 마지막에 있는 아이템을 POP하지만, POP할 아이템이 없을 경우
timeout 시간만큼 블럭된다. timeout 시간만큼 블럭되는 것을 제외하고는 RPOP와 동일하므로 자세한 사용법은 RPOP 문서를 참고하면 된다.
- timeout시간 동안 pop할 값이 없다면 nil을 반환한다.
- pop할 값이 있다면, 2개의 값을 반환한다. 첫 번째 값은 key의 이름이고, 두 번째 값은 POP된 value 다.
redis> RPUSH items:yundream item01 item02 item03
(integer) 3
redis> BRPOP items:yundream 0
1) "items:yundream"
2) "item03"
redis> LRANGE items:yundream 0 -1
1) "item01"
2) "item02"