now timer actually works, and threads sleep.
allows for request as much as possible
fixed sleep(-1) issue