Timeout

Server & Client Supported

ภาพรวม

ฟังก์ชันสำหรับจัดการการทำงานแบบหน่วงเวลา

ที่อยู่ไฟล์

source/modules/core/timeout.lua

ฟังก์ชัน

SetTimeout

ตั้งเวลาให้ฟังก์ชันทำงานหลังจากเวลาที่กำหนด

พารามิเตอร์
ประเภท
คำอธิบาย

msec

number

เวลาที่ต้องการหน่วง (มิลลิวินาที)

cb

function

ฟังก์ชันที่จะทำงานหลังหน่วงเวลา

ค่าที่ส่งกลับ:

  • number - ID ของ timeout (ใช้สำหรับยกเลิก)

  • nil - ถ้าเกิดข้อผิดพลาด

-- ตัวอย่างการใช้งานพื้นฐาน
AFUCore.SetTimeout(5000, function()
    print('ทำงานหลังจาก 5 วินาที')
end)

-- ตัวอย่างการเก็บ ID เพื่อยกเลิก
local timeoutId = AFUCore.SetTimeout(10000, function()
    print('ข้อความนี้จะไม่แสดงถ้าถูกยกเลิก')
end)

-- ตัวอย่างการใช้กับการแจ้งเตือน
AFUCore.SetTimeout(3000, function()
    AFUCore.ShowNotification('แจ้งเตือนหลัง 3 วินาที')
end)

-- ตัวอย่างการใช้แบบต่อเนื่อง
local function loop()
    print('ทำงานทุก 1 วินาที')
    AFUCore.SetTimeout(1000, loop)
end
loop()

ClearTimeout

ยกเลิกการทำงานของ timeout ที่ตั้งไว้

พารามิเตอร์
ประเภท
คำอธิบาย

tid

number

ID ของ timeout ที่ต้องการยกเลิก

การใช้งานขั้นสูง

การทำงานเป็นลำดับ

การทำ Animation ด้วย Timeout

หมายเหตุ

  • ใช้ระบบ timeout ด้วยความระมัดระวังเพื่อไม่ให้กระทบ performance

  • ควรยกเลิก timeout ที่ไม่จำเป็นเสมอ

  • หลีกเลี่ยงการใช้ timeout ซ้อนกันหลายชั้นเกินไป