这篇文章主要介绍了lua中使用毫秒精度时间的方法,本文讲解使用luasocket库实现毫秒精度时间,需要的朋友可以参考下!
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")
如果对精度的要求不需要到毫秒级别,可以用自带的os模块.精度为0.01秒(10ms ms:毫秒)
代码如下:
local s = os.clock()
local e = os.clock()
print("used time"..e-s.." seconds")
以上就是Lua中使用毫秒精度时间的方法。
我是在skynet框架下使用,感觉还不错。非常简洁,方便!
这篇文章主要介绍了lua中使用毫秒精度时间的方法,本文讲解使用luasocket库实现毫秒精度时间,需要的朋友可以参考下!lua自带的时间函数只能到秒的精度。为了统计到毫秒精度的时间,可以使用luasocket。下载地址http://files.luaforge.net/releases/luasocket/luasocket编译安装的时候,你可能需要在源码包根目录下的config文件中指定LUAINC变量为你的lua路径。...
Lua
自带的os函数,os.time()只取到秒。网上搜索
lua
毫秒
都是要
使用
lua
socket,觉得真没那个必要为了一个函数,用一套用不上的东西。试着写了个扩展,代码如下。
#include
#include
#include
#include
#include
static int getmicrosecond(
lua
_State *L) {
用
Lua
自带的函数os.time()获取秒数
Lua
自带的函数只能获取到秒,要获取到
毫秒
,需
使用
lzmq.timer,或者是socket(两个都需要
使用
lua
rocks安装)
os.clock返回一个程序
使用
CPU
时间
的一个近似值
os.date格式化日期:
local zmq_timer...
之前在项目
中
遇到一个问题:有个字段上游返回给我的是类似 “28800000” 这样格式的
毫秒
数,可是数据来源的UI界面上显示的却是类似 “9:00” 这样的格式,为了格式统一,PM 要求我能不能把我这边的格式转换一下。
由于这个字段是个实时数据,它没有跟数据库的某个表或者某个字段对应,所以要转的话只能用
Lua
脚本来进行转换。
我一开始用了os.date()函数,很容易就转换出来了。...
(1)\将日期
时间
年-月-日 时-分-秒 转化为
毫秒
数
loacl date="2016-08-12 14:34:56"
function getTimeByDate(date)
local a = split(r, " ")
local b = split(a[1], "-")
local c = split(a[2], ":")
local t =
2、
使用
os.time({timeTbl}) 获取指定日期的
时间
戳就需要注意了:
指定日期必须是在 1970-01-01 08:00:00 之后才能获取到
时间
戳,否则返回 nil 。
print(os.time({year = 1970, month = 1, day = 1, hour = 8, min = 0, sec = 0}))
lua
自带的
时间
函数只能到秒的
精度
。
为了统计到
毫秒
精度
的
时间
,可以
使用
lua
socket。下载地址http://files.
lua
forge.net/releases/
lua
socket/
lua
socket
编译安装的时候,你可能需要在源码包根目录下的config文件
中
指定
LUA
INC变量为你的
lua
路径。
代码如下:
local socket = require "socket
Lua
中
获取当前
时间
戳,
时间
戳转换为
时间
格式、
时间
戳转换为多久之前
在
Lua
中
我们有时候
时间
相关的内容,如获取当前的
时间
戳,将
时间
戳转换为
时间
格式,将
时间
戳转换为多久之前等。
下面就来介绍一下具体实现
方法
。
os.date("*t").hour
os.date("*t").wday
os.date("%Y-%m-%d, %H:%M:%S",os.time()) 返回当前机器
时间
的固定格式
os.tim
名称:MILLISECONDS2TIMESTAMP
功能:将1970-01-01 00:00:00以来的
毫秒
数转换为对应的timestamp
时间
类型,精确保留
毫秒
级
精度
!
参数:I_MILLISECONDS NUMBER 待转换的
毫秒
数
示例:select MILLISECONDS2TIMESTAMP(1397457489296) from dual;
SELECT TO_CHAR(MILLISECONDS2TIMESTAMP(1551804255181),
'yyyy-mm-dd hh24:mi:ss.ff3')
FROM DUAL;