在 LUA for 循环的迭代之间应用延迟

Posted

技术标签:

【中文标题】在 LUA for 循环的迭代之间应用延迟【英文标题】:Applying delay between iterations of LUA for loop 【发布时间】:2017-04-03 10:17:30 【问题描述】:

这几个小时我一直在摸不着头脑。所以我有一个脚本,我正在调用一个函数 625 次,但这会导致延迟,所以我想将 for 循环的每次迭代延迟 5 秒。任何帮助都会很棒。

【问题讨论】:

你有没有看过这个问题:***.com/questions/17987618/… 【参考方案1】:

我将这个小功能用于秒分辨率延迟。

function os.sleep(sec)
  local now = os.time() + sec
  repeat until os.time() >= now
end

编辑:添加毫秒版本(近似——不是很精确)

function os.sleep(msec)
  local now = os.clock() + msec/1000
  repeat until os.clock() >= now
end

【讨论】:

毫秒分辨率可以通过使用os.clock()而不是os.time()来实现。 更新了答案以包含此版本。谢谢。不过需要注意的是,根据 Lua 的引用,返回的值只是一个近似值。

以上是关于在 LUA for 循环的迭代之间应用延迟的主要内容,如果未能解决你的问题,请参考以下文章

Javascript:如何在执行 javascript 代码之间设置一个简单的延迟?

如何在JavaScript中使用async / await延迟数组回调?

PHP睡眠延迟

JavaFX延迟for循环中的颜色变化

Lua 程序延迟

Swift:for循环中延迟的动画不起作用?