线程计划程序¶
Time:5 分钟
Roblox 使用线程计划程序以允许多个脚本并行执行。你可以利用此功能,在同一脚本中并行运行两段代码。Roblox 的线程计划程序可通过 spawn
、wait
和 delay
函数体现。
在本文的剩余部分,“任务”一词用于表示由线程计划程序管理的协同程序。
列队任务¶
有两种方法可以将任务列队至线程计划程序中:
任务切换¶
Roblox 运行 wait 函数(或任何其他 YieldFunction)时,会暂停当前任务,使其列队等待稍后处理,然后查找其他等待任务(即另一个脚本或事件处理程序),并恢复下一个最重要的任务。没有其他方法可用于切换任务 - 如果你已使用 Spawn 使任务列队,则必须使用 wait() 才能使其运行:
此外,当列队任务终止时,可运行新任务 - 无需使用上述代码中的 wait():
ypcall¶
ypcall
可将任务列队,然后暂停当前任务,直到列队任务完成或出现错误