private void RunTasks() { while (TasksInQueueOrBeginProcessed) { var currentTasks = _queueManager.GetTasksToProcess(_timer.CurrentTime); _taskScheduler.AddNewTasks(currentTasks); _taskScheduler.Process(_timer.CurrentTime); _timer.Tick(); } }