fixed order when timer callbacks are called, tick then finish