public Boolean WaitThread(long milliseconds) { DateTime nextRetry = DateTime.Now + new TimeSpan(TimeSpan.TicksPerMillisecond * milliseconds); while (nextRetry > DateTime.Now) { if (this.stopped) return false; Thread.Sleep(20); } return true; }