explain why sleep() is necessary