リストの長さが指定されたmax_size
以下になるまでブロックするBLPUSH
コマンドのようなものを探しています。目的は、プロデューサが消費者よりも速く実行されている場合、リストが無限に増加するのを防ぐことです。リストに空きがあるまでブロックを押してください
この機能は、PythonのQueue.put()
と非常によく似ています。
this accepted answerが機能しないことに注意してください。なぜなら、(1)コードはすぐに戻り、まったくブロックしないからです。 (2)Luaにスピンロックを書き込むと、Redisがフリーズします。
LuaにBLPUSH
を実装する方法はありますか、それともCでなければなりませんか?