欢迎光临
我们一直在努力

openresty lua获取微秒和毫秒

time3.lua

local _M = {}
local ffi = require("ffi")
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 _M.current_time_millis()   
    ffi.C.gettimeofday(tm,nil);
    local sec =  tonumber(tm.tv_sec);
    local usec =  tonumber(tm.tv_usec);
    return sec + usec * 10^-6;
end

return _M

test.lua

local time_helper = require "time3"

local a = time_helper.current_time_millis()
local b = time_helper.current_time_millis()

ngx.say((b-a)*1000)

 

赞(5) 打赏
转载请注明来源:IT技术资讯 » openresty lua获取微秒和毫秒

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏