Is there any better way to sleep thread? - C#