--- libev/ev.pod 2012/01/21 12:23:45 1.393 +++ libev/ev.pod 2012/01/24 16:37:12 1.394 @@ -2110,15 +2110,24 @@ =item ev_timer_again (loop, ev_timer *) -This will act as if the timer timed out and restarts it again if it is -repeating. The exact semantics are: +This will act as if the timer timed out, and restarts it again if it is +repeating. It basically works like calling C, updating the +timeout to the C value and calling C. -If the timer is pending, its pending status is cleared. +The exact semantics are as in the wollofing rules, all of which will be +applied to the watcher: -If the timer is started but non-repeating, stop it (as if it timed out). +=over 4 -If the timer is repeating, either start it if necessary (with the -C value), or reset the running timer to the C value. +=item If the timer is pending, the pending status is always cleared. + +=item If the timer is started but non-repeating, stop it (as if it timed +out, without invoking it). + +=item If the timer is repeating, make the C value the new timeout +and start the timer, if necessary. + +=back This sounds a bit complicated, see L, above, for a usage example.