Advertisement
Guest User

Untitled

a guest
Sep 19th, 2017
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.54 KB | None | 0 0
  1. from functools import wraps, partial
  2.  
  3. def runforever(f, interval_secs=5):
  4. @wraps(f)
  5. def wrapper(*args, **kwds):
  6. while True:
  7. f(*args, **kwds)
  8. time.sleep(interval_secs)
  9. def runner(interval_secs, *args, **kwds):
  10. t = threading.Thread(target=wrapper, *args, **kwds)
  11. t.daemon = True
  12. t.start()
  13. wrapper = partial(wrapper)
  14. runner = partial(runner, interval_secs=interval_secs)
  15. return runner
  16.  
  17. # this decorator with run your function in seperate thread after each interval_secs
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement