Di chuyển phần tử hàng đợi theo cách nguyên tử (LCC.kvdb.queue.move)
Khai báo
value, err = LCC.kvdb.queue.move(from_name, pop?, to_name, push?, timeout?)
Tham số
- from_name
Kiểu chuỗi, tên hàng đợi nguồn (không được rỗng, tối đa256byte) - pop
Kiểu chuỗi, tùy chọn; đầu lấy phần tử ra khỏi hàng đợi nguồn,"front"hoặc"back", mặc định là"front" - to_name
Kiểu chuỗi, tên hàng đợi đích (không được rỗng, tối đa256byte) - push
Kiểu chuỗi, tùy chọn; đầu đưa phần tử vào hàng đợi đích,"front"hoặc"back", mặc định là"back" - 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 di chuyển; lànilkhi hàng đợi nguồn rỗng - err
Kiểu chuỗi hoặcnil, trả về'not found'khi thất bại hoặc hàng đợi nguồn rỗng
Mô tả
Lấy một phần tử ra khỏi hàng đợi nguồn và đưa vào hàng đợi đích theo cách nguyên tử.
Phù hợp để triển khai việc chuyển giao tác vụ theo cơ chế chiếm quyền, tránh tranh chấp đồng thời.
Khi hàng đợi nguồn rỗng, trả vềnil, 'not found'.
Ví dụ
local value, err = LCC.kvdb.queue.move("Đang chờ xử lý", "front", "Đang xử lý", "back")
if value then
print("Nhận tác vụ:", value)
end