Chuyển tới nội dung chính

Lấy phần tử khỏi đầu hàng đợi (LCC.kvdb.queue.pop_front)

Khai báo​

value, err = LCC.kvdb.queue.pop_front(name, timeout?)
values, err = LCC.kvdb.queue.pop_front({name = name, max = n}, timeout?)

Tham số​

  • name Kiểu chuỗi, tên hàng đợi (không được rỗng, tối đa 256 byte); truyền {name = "...", max = n} để lấy nhiều phần tử ra cùng lúc
  • timeout
    Kiểu số, tùy chọn; thời gian chờ yêu cầu (giây), mặc định là 60

Giá trị trả về​

  • value
    Kiểu chuỗi, phần tử đã được lấy ra; là nil khi hàng đợi rỗng
  • values Mảng chuỗi, danh sách phần tử được lấy ra trong chế độ hàng loạt; là {} khi hàng đợi rỗng
  • err Kiểu chuỗi hoặc nil; ở chế độ một giá trị, trả về 'not found' khi hàng đợi rỗng hoặc không tồn tại

Mô tả​

Lấy và xóa một phần tử khỏi đầu hàng đợi.
Chế độ hàng loạt trả về tối đa max phần tử theo đúng thứ tự chúng được lấy ra. Khi hàng đợi rỗng, trả về nil, 'not found'.

Ví dụ​

local value, err = LCC.kvdb.queue.pop_front("Tác vụ đang chờ")
if value then
print("Xử lý tác vụ:", value)
end

local values, batch_err = LCC.kvdb.queue.pop_front({name = "Tác vụ đang chờ", max = 3})
for _, item in ipairs(values or {}) do
print("Xử lý tác vụ:", item)
end