当前位置: 首页 > 编程笔记 >

lua中使用毫秒精度时间的方法

马朝斑
2023-03-14
本文向大家介绍lua中使用毫秒精度时间的方法,包括了lua中使用毫秒精度时间的方法的使用技巧和注意事项,需要的朋友参考一下

lua自带的时间函数只能到秒的精度。

为了统计到毫秒精度的时间,可以使用luasocket。下载地址http://files.luaforge.net/releases/luasocket/luasocket

编译安装的时候,你可能需要在源码包根目录下的config文件中指定LUAINC变量为你的lua路径。


local socket = require "socket"

local t0 = socket.gettime()

-- do something

local t1 = socket.gettime()

print("used time: "..t1-t0.."ms")

update:

如果对精度的要求不需要到毫秒级别,可以用自带的os模块.精度为0.01秒


local s = os.clock()

local e = os.clock()

print("used time"..e-s.." seconds")

 类似资料:
  • 我在代码中使用倒计时。问题是,倒计时不准确。onTick方法并不总是每秒执行一次,它可能需要几毫秒的时间。当试图基于millisUntilFinished执行某项任务时,这会成为一个问题。当我的20秒计时器超过10秒时,我正在尝试登录: 以下是相关代码: 这里出现了一个问题,因为countDownTimer可能永远不会有millisUntilFinished==10000,它可能等于1001,因此

  • 我现在用SDL2编程。所有这些都可以正常工作,但我对方法有一个问题。通常,它应该以毫秒为单位返回应用程序的总时间,但它总是在大部分时间返回值0,有时返回值1。 我用标志初始化SDL。 以下代码的问题是循环太快,因此增量时间小于1 ms。是否有方法实现更高的精度?

  • 问题内容: 我必须使用MySQL开发应用程序,并且必须保存“ 1412792828893”之类的值,该值代表时间戳,但精度为毫秒。即,自1970年1月1日以来的毫秒数。我声明该行为,但不幸的是,这行不通。所有值均设置为 为了能够以这种精度保存时间戳记值,如何声明? 问题答案: 您需要使用MySQL 5.6.4或更高版本,才能声明具有小数秒时间数据类型的列。不确定您使用的版本正确吗?尝试。如果遇到错

  • 问题内容: 我在Vala中编写一些代码,在那里我将首先获取系统时间,然后创建一个文件,然后检索该文件的时间戳。时间戳记总是早于系统时间,介于500到1500微秒之间,这没有任何意义。 然后,我编写了一个简单的shell脚本: 结果如下: 如您所见,小数点后的前3位(毫秒)似乎可以正常显示,因为它们正在按预期的顺序递增,但是第4位及其后的数字看起来不正确。倒数第4至9位似乎在变慢。我有什么理由吗,尽

  • sleep(500)将挂起当前线程至少500毫秒,我知道它可能会比500多一点,但绝不会少于这个时间。现在,1毫秒=1000000纳秒,我想暂停当前线程500毫秒,即=500*1000000纳秒,但当我运行以下代码时,它有时睡眠时间少于指定的纳秒值。这是为什么呢?以及如何至少睡500*1000000纳秒。 有时输出是

  • 问题内容: 因此,我刚刚发现MySQL中最令人沮丧的错误。 显然,该字段及其支持功能不支持比秒更高的精度! 所以我正在使用PHP和Doctrine,我真的需要那些微秒(我正在使用属性)。 我发现我可以使用一个字段来存储值。但是学说会增加毫秒吗?我认为它只是将NOW()分配给该字段。我还担心通过代码散布的日期操作功能(在SQL中)会中断。 我还看到了有关编译UDF扩展的内容。这是不可接受的,因为我或