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

Mã mẫu cho thread

tmid = thread.dispatch( -- điều phối một tác vụ bất đồng bộ
function()
sys.msleep(2700)
sys.toast("Đây là giây thứ 2,7")
end
)
--
tid = thread.dispatch( -- điều phối một tác vụ bất đồng bộ khác
function()
sys.msleep(300)
for i=1,10 do
sys.toast("Thread 2: "..i)
sys.msleep(1000)
end
sys.toast("Không nên chạy đến đây")
end
)
--
-- Ví dụ chụm hai ngón tay trong ứng dụng Ảnh trên iPhone 5C
--
thread.dispatch(function() -- điều phối một tác vụ vuốt
touch.on(59,165)
:move(297,522)
:msleep(500)
:off()
end)
--
thread.dispatch(function() -- điều phối một tác vụ vuốt khác
touch.on(580,1049)
:move(371,1049)
:msleep(500)
:off()
end)
--
proc_queue_clear("message-from-far-away")
eid = thread.register_event( -- đăng ký trình lắng nghe sự kiện "từ điển có giá trị"
"message-from-far-away",
function(val)
sys.toast("Đã nhận thông báo: "..val)
end
)
--
sys.msleep(300)
thread.wait(tmid)
--
for i=1,10 do
sys.toast("Thread 1: "..i)
sys.msleep(400)
end
--
thread.kill(tid) -- kết thúc Thread 2
thread.unregister_event("message-from-far-away", eid) -- hủy đăng ký trình lắng nghe sự kiện
--
sys.toast("Hoàn tất")

Lưu ý: Đoạn mã trên sử dụng các hàm và phương thức từ chương khác: proc_queue_clear, sys.msleep, sys.toast, touch.on, :move, :msleep, :off