worked through a couple todos, removed usage of eval within parsing xml files
This commit is contained in:
parent
e4b280196b
commit
8612c73d49
8 changed files with 76 additions and 58 deletions
44
daemon/examples/eventloop.py
Normal file
44
daemon/examples/eventloop.py
Normal file
|
@ -0,0 +1,44 @@
|
|||
import time
|
||||
|
||||
from core import logger
|
||||
from core.misc.event import EventLoop
|
||||
|
||||
|
||||
def main():
|
||||
loop = EventLoop()
|
||||
|
||||
def msg(arg):
|
||||
delta = time.time() - loop.start
|
||||
logger.debug("%s arg: %s", delta, arg)
|
||||
|
||||
def repeat(interval, count):
|
||||
count -= 1
|
||||
msg("repeat: interval: %s; remaining: %s" % (interval, count))
|
||||
if count > 0:
|
||||
loop.add_event(interval, repeat, interval, count)
|
||||
|
||||
def sleep(delay):
|
||||
msg("sleep %s" % delay)
|
||||
time.sleep(delay)
|
||||
msg("sleep done")
|
||||
|
||||
def stop(arg):
|
||||
msg(arg)
|
||||
loop.stop()
|
||||
|
||||
loop.add_event(0, msg, "start")
|
||||
loop.add_event(0, msg, "time zero")
|
||||
|
||||
for delay in 5, 4, 10, -1, 0, 9, 3, 7, 3.14:
|
||||
loop.add_event(delay, msg, "time %s" % delay)
|
||||
|
||||
loop.run()
|
||||
|
||||
loop.add_event(0, repeat, 1, 5)
|
||||
loop.add_event(12, sleep, 10)
|
||||
|
||||
loop.add_event(15.75, stop, "stop time: 15.75")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
Loading…
Add table
Add a link
Reference in a new issue