# block action with handle +handle+
def block(handle)
+ raise "no such timer #{handle}" unless @timers[handle]
@timers[handle].blocked = true
end
# unblock action with handle +handle+
def unblock(handle)
+ raise "no such timer #{handle}" unless @timers[handle]
@timers[handle].blocked = false
end
# reschedule action with handle +handle+ to change its period
def reschedule(handle, period)
+ raise "no such timer #{handle}" unless @timers[handle]
@timers[handle].reschedule(period)
+ tick
end
# you can call this when you know you're idle, or you can split off a