util/timer.lua

changeset 2366
c3a364342cb4
parent 2098
a1ad06f1c090
child 2925
692b3c6c5bd2
equal deleted inserted replaced
2365:0bd8408a491c 2366:c3a364342cb4
53 end 53 end
54 end); 54 end);
55 else 55 else
56 local EVENT_LEAVE = (event.core and event.core.LEAVE) or -1; 56 local EVENT_LEAVE = (event.core and event.core.LEAVE) or -1;
57 function _add_task(delay, func) 57 function _add_task(delay, func)
58 event_base:addevent(nil, event.EV_TIMEOUT, function () 58 event_base:addevent(nil, 0, function ()
59 local ret = func(); 59 local ret = func();
60 if ret then 60 if ret then
61 _add_task(ret, func); 61 return 0, ret;
62 else 62 else
63 return EVENT_LEAVE; 63 return EVENT_LEAVE;
64 end 64 end
65 end 65 end
66 , delay); 66 , delay);

mercurial