aboutsummaryrefslogtreecommitdiff
path: root/nerv/examples/network_debug/timer.lua
diff options
context:
space:
mode:
authorQi Liu <liuq901@163.com>2016-03-11 20:11:00 +0800
committerQi Liu <liuq901@163.com>2016-03-11 20:11:00 +0800
commite2a9af061db485d4388902d738c9d8be3f94ab34 (patch)
tree468d6c6afa0801f6a6bf794b3674f8814b8827f7 /nerv/examples/network_debug/timer.lua
parent2f46a5e2b37a054f482f76f4ac3d26b144cf988f (diff)
add recipe and fix bugs
Diffstat (limited to 'nerv/examples/network_debug/timer.lua')
-rw-r--r--nerv/examples/network_debug/timer.lua33
1 files changed, 33 insertions, 0 deletions
diff --git a/nerv/examples/network_debug/timer.lua b/nerv/examples/network_debug/timer.lua
new file mode 100644
index 0000000..2c54ca8
--- /dev/null
+++ b/nerv/examples/network_debug/timer.lua
@@ -0,0 +1,33 @@
+local Timer = nerv.class("nerv.Timer")
+
+function Timer:__init()
+ self.last = {}
+ self.rec = {}
+end
+
+function Timer:tic(item)
+ self.last[item] = os.clock()
+end
+
+function Timer:toc(item)
+ if (self.last[item] == nil) then
+ nerv.error("item not there")
+ end
+ if (self.rec[item] == nil) then
+ self.rec[item] = 0
+ end
+ self.rec[item] = self.rec[item] + os.clock() - self.last[item]
+end
+
+function Timer:check(item)
+ if self.rec[item]==nil then
+ nerv.error('item not there')
+ end
+ nerv.printf('"%s" lasts for %f secs.\n',item,self.rec[item])
+end
+
+function Timer:flush()
+ for key, value in pairs(self.rec) do
+ self.rec[key] = nil
+ end
+end