libs/core: debug.lua use integers for memory size and peak value
This commit is contained in:
parent
3e0b6b681c
commit
3f1393006e
1 changed files with 5 additions and 4 deletions
|
@ -1,6 +1,6 @@
|
||||||
local debug = require "debug"
|
local debug = require "debug"
|
||||||
local io = require "io"
|
local io = require "io"
|
||||||
local collectgarbage = collectgarbage
|
local collectgarbage, floor = collectgarbage, math.floor
|
||||||
|
|
||||||
module "luci.debug"
|
module "luci.debug"
|
||||||
__file__ = debug.getinfo(1, 'S').source:sub(2)
|
__file__ = debug.getinfo(1, 'S').source:sub(2)
|
||||||
|
@ -13,15 +13,16 @@ function trap_memtrace(flags, dest)
|
||||||
|
|
||||||
local function trap(what, line)
|
local function trap(what, line)
|
||||||
local info = debug.getinfo(2, "Sn")
|
local info = debug.getinfo(2, "Sn")
|
||||||
if collectgarbage("count") > peak then
|
local size = floor(collectgarbage("count"))
|
||||||
peak = collectgarbage("count")
|
if size > peak then
|
||||||
|
peak = size
|
||||||
end
|
end
|
||||||
if tracefile then
|
if tracefile then
|
||||||
tracefile:write(
|
tracefile:write(
|
||||||
"[", what, "] ", info.source, ":", (line or "?"), "\t",
|
"[", what, "] ", info.source, ":", (line or "?"), "\t",
|
||||||
(info.namewhat or ""), "\t",
|
(info.namewhat or ""), "\t",
|
||||||
(info.name or ""), "\t",
|
(info.name or ""), "\t",
|
||||||
collectgarbage("count"), " (", peak, ")\n"
|
size, " (", peak, ")\n"
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue