Как приблизить время обработки? - PullRequest
1 голос
/ 20 сентября 2010

Обычно появляются сообщения типа «Установка займет около 10 минут». и т. д. в настольных приложениях. Итак, мне интересно, как я могу рассчитать приблизительное количество времени, которое займет определенный процесс. Конечно, я не буду ничего устанавливать, но я хочу обновить некоторые внутренние данные, и в зависимости от использования пользователя это может занять некоторое время.

Возможно ли это в приложении для iPhone? Как парни из Какао делают это, будет ли это так же, как в приложениях для iPhone?

Заранее спасибо.

ОБНОВЛЕНИЕ: Я хочу переписать / отредактировать некоторые файлы на диске, в большинстве случаев они имеют разный размер, поэтому я не могу использовать таймеры для первой итерации и рассчитывать оставшиеся значения. Есть ли какой-либо API, который помогает при расчете этого?

1 Ответ

1 голос
/ 20 сентября 2010

Если у вас есть какой-то список вещей для обработки, каждая «вещь» - обычно лучше измерить группу из примерно 10 «вещей» - это единица работы.Ваша цель - узнать, сколько времени занимает обработка одной группы и сообщить примерное время до завершения.

Один из способов - создать NSDate в начале каждой группы и новую в конце (верх и низ вашего цикла for) для каждой группы.Умножьте разницу в секундах на количество оставленных вами групп (за исключением той, которую вы только что обработали), и это должно быть разумной оценкой оставшегося времени.

Конечно, это усложняется, если одна "вещь" занимаетнамного дольше обрабатывать, чем другую «вещь» - вышеупомянутый подход предполагает, что все вещи занимают одинаковое количество времени.В этом случае, однако, вам может потребоваться отслеживать среднее окно (по последним n «вещам» или их группам).

Более подробный ответ потребует более подробной информации о вашей модели и работе, которую вы выполняете.исполняем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...