2013-12-22 7 views
1

У меня есть программа, которая берет текстовый файл, читает каждую строку и затем вставляет каждую строку в список. Я использовал stopwatch для расчета времени выполнения. Но есть некоторый доход! Я буду давать различное время, когда я запускаю программу каждый раз (разница составляет около 1 или 2 секунды).Изменение времени выполнения программы

Текстовый файл содержит 3 миллиона URL-адресов.

Любая идея ??!

+1

Итак, вы отправляете три МИЛЛИОННЫЕ запросы по сети каждый раз и задаетесь вопросом о разнице в несколько секунд между различными прогонами? Это потому, что извлечение чего-то из сети занимает некоторое время, и это время зависит от различных факторов, многие из которых вы не можете контролировать и могут постоянно меняться. – ThiefMaster

+0

Любой ответ, не глядя на ваш код, вероятно, будет неправильным. Более того, вы почти используете неправильную технологию, учитывая ваш вопрос. Пожалуйста, разместите код. – danish

ответ

1

Некоторые колебания совершенно нормальны, особенно когда код включает IO, например, чтение файлов.

+0

Почему? Есть ли веская причина для этого и есть ли способ, которым я могу решить эту проблему? – Chavoosh

+0

Как это проблема? Вы как-то зависите от постоянного времени выполнения? –

+0

Да, мне нужно постоянное время выполнения для моей программы, и это так важно, потому что для меня важны все секунды. – Chavoosh

4

Время обработки набора команд зависит от (но не ограничивается ими):

  • скорость процессора
  • Efficency вашего кода
  • ASYN против методов синхронизации
  • сеть скорость
  • сетевая компьютерная
  • скорость жесткого диска
  • ра м
  • мое настроение
  • ...

Я мог бы продолжать в течение нескольких дней здесь. Дело в том, что, как сказал TheifMaster, здесь так много переменных, что было бы чудом, если бы ваш код имел одинаковое время для любых двух запусков! Это методология «каждая снежинка отличается». С таким количеством переменных окружения, 2 прогона будут одинаковыми.

Не волнуйтесь о временных разностях, просто сосредоточьтесь на том, чтобы среднее время было таким низким, как вам нужно.

+2

Ну, может быть, не «как можно ниже», но «как можно ниже». –

+0

@JohnSaunders, согласовано. Забыл, что преждевременная оптимизация - одно из проблем программирования. – gunr2171

Смежные вопросы