Название: Remaining time в SQLite Отправлено: asrael от Январь 06, 2011, 16:24 всем доброго времени..
проблема.. обрабатываю данные и добавляю их в БД. это все занимает довольно-таки длительное время.. как можно рассчитать оставшееся время? пытался рассчитывать среднее время за одну операцию, а потом умножать на количество оставшихся, но, если процесс идет неравномерный, то погрешность большая очень выходит.. Название: Re: Remaining time в SQLite Отправлено: twp от Январь 06, 2011, 17:14 имхо не реально. А зачем это нужно?
Название: Re: Remaining time в SQLite Отправлено: asrael от Январь 06, 2011, 17:22 да почему нереально? реально.. кода с собой сейчас нет, буду вечером дома - выложу..
зачем? ну, а зачем делают таймер оставшегося времени? чтоб знать, сколько нам осталось..) знать, успеешь кофе выпить и покурить, пока база обновляется или нет.. лично у меня спортивный интерес.. Название: Re: Remaining time в SQLite Отправлено: Ayanami_Rey от Январь 06, 2011, 17:26 как вариант считать не по одной операции, а среднее время допустим за все предыдущие операции и умножать на оставшиеся...
и того получим не конкретное оставшееся время, а среднестатистическое (мб чуть выше реального, а мб и чуть ниже) Название: Re: Remaining time в SQLite Отправлено: asrael от Январь 06, 2011, 17:53 так в любом случае получится приблизительно, ведь скорость выполнения зависит от многих параметров, доступность ресурсов ПК, например..
как вариант считать не по одной операции, а среднее время допустим за все предыдущие операции и умножать на оставшиеся... ну, я примерно так и делал.. не помню уже, сегодня ночью сочинял..)и того получим не конкретное оставшееся время, а среднестатистическое (мб чуть выше реального, а мб и чуть ниже) Название: Re: Remaining time в SQLite Отправлено: twp от Январь 06, 2011, 17:59 ну в таких случаях лучше повесить прогрессбар, и наглядно и не нужно вычислять сколько времени еще осталось
Название: Re: Remaining time в SQLite Отправлено: asrael от Январь 06, 2011, 18:10 прогрессбар повешен и работает - с ним проблем не было.. но процент выполнения - это одно, а оставшееся время - это совсем другое..
Название: Re: Remaining time в SQLite Отправлено: Ayanami_Rey от Январь 06, 2011, 18:21 гы. тогда посоветую пользоваться алгоритмами расчета погоды. и точность уже будет зависеть от кол-ва накопленных данных и вычислительной мощности компьютера.
имхо 100% точно рассчитать оставшееся время выполнения операции при обращении к бд невозможно. Название: Re: Remaining time в SQLite Отправлено: asrael от Январь 06, 2011, 18:31 так я на точность и не настаиваю.. мне нужно приблизительное значение.. а изобретать заново велосипед не хочется, ибо это далеко не самая главная функция моей программы и рядовой пользователь вряд ли её вообще когда-то увидит и оценит..)
повторяюсь, это всего лишь спортивный интерес.. Название: Re: Remaining time в SQLite Отправлено: Ayanami_Rey от Январь 06, 2011, 20:04 тогда не вижу причины, по которой не удовлетворяет среднее время выполнения всех предыдущих операций*на кол-во оставшихся.
Название: Re: Remaining time в SQLite Отправлено: asrael от Январь 06, 2011, 23:05 вот, собственно, мой велосипед - это то, что происходит в Timer'e. интервал, понятно - секунда:
Код: void Open_form::update() |