]> git.ozlabs.org Git - ccan/blobdiff - ccan/timer/_info
timer: change to use time_mono (api break!)
[ccan] / ccan / timer / _info
index 4c58d9e5f5bee7da8dce493b53946f84931b8975..c3a01e301e8328cb985042ede9e758ba430672ed 100644 (file)
  *     {
  *             struct timers timers;
  *             struct list_head strings;
- *             struct list_head expired;
+ *             struct timer *t;
  *             struct timed_string *s;
  *
- *             timers_init(&timers, time_now());
+ *             timers_init(&timers, time_mono());
  *             list_head_init(&strings);
  *
  *             while (argv[1]) {
  *                     s = malloc(sizeof(*s));
  *                     s->string = argv[1];
- *                     timer_add(&timers, &s->timer,
- *                               timeabs_add(time_now(),
- *                                           time_from_msec(atol(argv[2]))));
+ *                     timer_addrel(&timers, &s->timer,
+ *                                  time_from_msec(atol(argv[2])));
  *                     list_add_tail(&strings, &s->node);
  *                     argv += 2;
  *             }
  *
  *             while (!list_empty(&strings)) {
- *                     struct timeabs now = time_now();
+ *                     struct timemono now = time_mono();
  *                     list_for_each(&strings, s, node)
  *                             printf("%s", s->string);
- *                     timers_expire(&timers, now, &expired);
- *                     while ((s = list_pop(&expired, struct timed_string,
- *                                          timer.list)) != NULL) {
+ *                     while ((t = timers_expire(&timers, now)) != NULL) {
+ *                             s = container_of(t, struct timed_string, timer);
  *                             list_del_from(&strings, &s->node);
  *                             free(s);
  *                     }