Redis
 Computer >> コンピューター >  >> プログラミング >> Redis

リストの最初の要素を削除して返す方法– Redis LPOP | BLPOP

このチュートリアルでは、redisデータストアのキーに保存されているリスト値の最初の要素を削除して返す方法について学習します。このために、redis LPOPを使用します およびBLPOP コマンド。

LPOPコマンド

このコマンドは、指定されたキーに格納されているリスト値の最初の要素を削除して返すために使用されます。キーが存在しない場合はNilが返され、キーは存在するがキーに格納されている値がリストデータ型ではない場合はエラーが返されます。 RedisLPOPコマンドの構文は次のとおりです:-

構文:-

redis host:post> LPOP <keyname>

出力:-

- (string) reply, representing first element of the list.
- (nil), if key does not exists.
- Error, if key exist and value stored at the key is not a list.

例:-

リストの最初の要素を削除して返す方法– Redis LPOP | BLPOP

BLPOPコマンド

このコマンドは、指定されたリストのいずれかからポップする要素がない場合に操作をブロックするため、LPOPコマンドのブロックバージョンです。つまり、指定されたすべてのリストが空であるか、指定されたすべてのキーが存在しない場合に、操作をブロックします。

空でないリスト値の最初の要素を削除して返し、指定されたキーを左から右にチェックします。たとえば、コマンド BLPOP list1 list2 list3 0 キーlist1が実行されます 存在しない(空のリストと見なす)、 list2 空のリストであり、 list3 3つの要素が含まれている場合、 list3に格納されているリスト値の最初の要素を削除して返します。 list1からlist3にチェックするとき、これは最初の空でないリストであるため。

指定されたキーが存在しないか、指定されたキーのリスト値が空の場合、BLPOPは、別のクライアントがLPUSH、RPUSH、LINSERTなどのコマンドを実行して、指定されたキーの1つに要素を挿入するまで、操作をブロックします。リスト値の1つに新しい要素が存在すると、クライアントは、ブロックを解除するキーの名前とポップされた値を返します。

BLPOPによってクライアントがブロックされ、ゼロ以外のタイムアウトが指定された場合、指定されたキーの少なくとも1つに対する挿入操作なしで、指定されたタイムアウトが期限切れになると、クライアントはnil値を返すブロックを解除します。

タイムアウト引数は、ブロックする最大秒数を表す整数値です。 0秒のタイムアウトを使用して、無期限にブロックできます。

Redis BLPOPコマンドの構文は次のとおりです:-

構文:-

redis host:post> BLPOP <keyname-1> [ <keyname> ] <timeout>

出力:-

- (array) reply, two elements are returned where first element is name of the popped element key
  and second element is the popped element itself.
- (nil), when no element could be popped and timeout is expired.

例:-

リストの最初の要素を削除して返す方法– Redis LPOP | BLPOP

参照:-

  1. LPOPコマンドドキュメント
  2. BLPOPコマンドドキュメント

これで、redisデータストアに保存されているリスト値の最初の要素を削除して返す方法は終わりです。気に入った場合は、コメントセクションで自分の考えを共有し、他の人にも共有してください。

<-コマンドの一覧表示


  1. リスト値の先頭に要素を挿入する方法– Redis LPUSH | LPUSHX

    このチュートリアルでは、redisデータストアのキーに保存されているリスト値の先頭に1つ以上の要素を挿入する方法について学習します。このために、Redis LPUSHを使用します およびLPUSHX コマンド。 LPUSHコマンド LPUSHコマンドは、キーに格納されているリスト値の先頭(開始)に1つ以上の指定された要素を挿入するために使用されます。リスト値の先頭に、左端の要素から右端の要素まで、要素が次々に挿入されます。たとえば、コマンド LPUSH list a b cの場合 が実行されると、リストには cが含まれます。 最初の要素として、 b 2番目の要素としてa

  2. Redisリスト–Redisデータストアのリスト値を管理するコマンド

    リストは、挿入順序で並べ替えられた文字列のシーケンスです。Redisでは、リストをキーの値として保存でき、さまざまなredisコマンドを使用して、redisデータベースに保存されたリスト値を保存、管理、取得します。 redisコマンドを使用するための構文は次のとおりです:- 構文:- redis host:post> <Command Name> <key name> 例:- Redisリスト値コマンド:- redisデータベースのリスト値を管理するための重要なコマンドのいくつかは次のとおりです:- S。いいえ コマンド 説明 1