timer.py 681 B

123456789101112131415161718192021222324252627282930313233343536
  1. # -*- coding: utf-8 -*-
  2. from __future__ import absolute_import
  3. import sys
  4. from time import sleep
  5. from celery.five import range
  6. from celery.utils import timer2 as timer
  7. def noop(*args, **kwargs):
  8. return
  9. def insert(s, n=100000):
  10. for i in range(n):
  11. s.apply_after(1 + (i and i / 10.0), noop, (i, ))
  12. def slurp(s, n=100000):
  13. i = 0
  14. it = iter(s)
  15. while i < n:
  16. delay, entry = next(it)
  17. if entry:
  18. i += 1
  19. s.apply_entry(entry)
  20. #else:
  21. #if delay:
  22. # sleep(delay)
  23. if __name__ == '__main__':
  24. s = timer.Schedule()
  25. insert(s)
  26. if '--insert-only' not in sys.argv:
  27. slurp(s)