Fix: do not wait for timer to end on the same thread the timer callback is invoked
- Call Timer.cancel to cancel a timer, but not waiting for it to cancel
- Call Timer.stop to cancel and wait a timer