timer.lua 980 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. local function timer_test_task_func()
  2. sys.timerStart(log.info, 1000, "red")
  3. sys.timerStart(log.info, 2000, "red")
  4. sys.timerStart(log.info, 3000, "red")
  5. sys.wait(3000)
  6. sys.timerLoopStart(sys.publish, 1000, "loop_timer_cbfunc_msg")
  7. sys.timerStart(sys.timerStop, 5500, sys.publish, "loop_timer_cbfunc_msg")
  8. while true do
  9. local result = sys.waitUntil("loop_timer_cbfunc_msg", 2000)
  10. if result then
  11. log.info("receive loop_timer_cbfunc_msg")
  12. else
  13. log.info("no loop_timer_cbfunc_msg, 2000ms timeout")
  14. break
  15. end
  16. end
  17. local timer_id = sys.timerStart(log.info, 1000, "1")
  18. sys.timerStart(log.info, 2000, "2")
  19. sys.timerStart(log.info, 3000, "3")
  20. sys.timerStart(log.info, 4000, "4")
  21. sys.timerStart(log.info, 5000, "5")
  22. sys.timerStop(timer_id)
  23. sys.wait(2000)
  24. sys.timerStopAll(log.info)
  25. end
  26. sys.timerStart(sys.taskInit, 3000, timer_test_task_func)