private void InitThread(Time time, Exp action) { while (true) { Thread.Sleep(GetTimeUntilSleep(time)); action.Invoke(); } }