Я почесал голову над этим уже пару часов, я набрал сотрудников и мы все потерялись. Это может быть слишком много кофе из новой эспрессо-машины или тот факт, что сегодня пятница ... Мы не уверены!
У меня есть следующий метод:
private void calcuateEstimatedExecutionTimesForDueJobs(List<TestJob> dueJobs)
{
DateTime rollingTime = DatabaseConnection.getNow();
foreach (TestJob job in dueJobs)
{
job.setEstimatedStart(rollingTime);
double estimatedRuntime = job.getEstimatedRuntime();
rollingTime = rollingTime.AddSeconds(estimatedRuntime);
job.setEstimatedFinish(rollingTime);
}
}
Намерение состоит в том, чтобы обработать список «TestJobs», которые наше приложение поставлено в очередь. Наш TestJob любезно знает, сколько времени «вероятно» займет запуск, поэтому я надеюсь использовать эту информацию здесь, чтобы предсказать время «Start» и «Finish» каждого TestJob.
К сожалению, rollTime никогда не изменяется. Хотя job.getEstimatedRuntime () всегда возвращает положительное значение типа double, вызов AddSeconds () для текущего TestJob и передача этого значения не имеет никакого эффекта.
Есть ли в моем коде ошибка или что-то более зловещее?
Обновление: Я заметил, что этот вопрос все еще получает несколько просмотров. Для тех из вас, кто страдает от странной проблемы, подобной моей, я помню, как решил эту проблему, просто перезапустив Visual Studio / Rebooting . Я думаю, эта проблема все еще всплывает время от времени ... (Гм ...)!