For some reason the timer doesn't trigger with just one iteration of UV_RUN_ONCE, but the second is enough. I don't know why this is.