今天需要在lua中计算时间,精确到us。
发现lua库中的时间函数是精确到秒的。
所以这里调用了lua底层的C库来得到更精确的时间函数:
ffi.cdef[[
struct timeval {long int tv_sec;
long int tv_usec;
};
int gettimeofday(struct timeval *tv, void *tz);
]];
local tm = ffi.new("struct timeval");
function NewTimeKey()
ffi.C.gettimeofday(tm, nil)
local sec = tonumber(tm.tv_sec)
local usec = tonumber(tm.tv_usec);
print("second : " .. tostring(sec))
print("usecond : " .. tostring(usec))
print("result : " .. tostring(sec) .. "." .. tostring(usec))
end
NewTimeKey()