Retirar do fim da fila (LCC.kvdb.queue.pop_back)
Declaração
value, err = LCC.kvdb.queue.pop_back(name, timeout?)
values, err = LCC.kvdb.queue.pop_back({name = name, max = n}, timeout?)
Parâmetros
- name
Tipo string; nome da fila (não vazio, no máximo
256bytes); passe{name = "...", max = n}para retirar em lote - timeout
Tipo number, opcional; tempo limite da solicitação (em segundos), padrão60
Valor de retorno
- value
Tipo string; elemento retirado, ounilquando a fila está vazia - values
Array de strings; lista de elementos retirados no modo em lote, ou
{}quando a fila está vazia - err
Tipo string ou
nil; no modo de valor único, retorna'not found'quando a fila está vazia ou não existe
Descrição
Retira um elemento do fim da fila.
No modo em lote, retorna no máximomaxelementos na ordem real em que foram retirados. É adequado para cenários de consumo último a entrar, primeiro a sair (LIFO).
Exemplo
local value, err = LCC.kvdb.queue.pop_back("待处理任务")
if value then
print("处理最新任务:", value)
end
local values, batch_err = LCC.kvdb.queue.pop_back({name = "待处理任务", max = 3})
for _, item in ipairs(values or {}) do
print("处理最新任务:", item)
end