Задать вопрос
qmax
@qmax
программер

Повторение попыток выполнения после сбоя?

Как называется языковая конструкция (паттерн), позволяющая повтрять выполнение фрагмента кода при возникновении сбоя (исключения) во время его выполнения.
  • Вопрос задан
  • 2925 просмотров
Подписаться 4 Оценить 8 комментариев
Пригласить эксперта
Ответы на вопрос 3
rasa
@rasa
Многие решают это обычными циклами. Но вы ищете не решение, а именно название?
Ответ написан
kk86
@kk86
Естественно, что простой цикл или «расписание» задач будут лежать в основе метода. Трудно придумать что-то ещё.

Представим, что у вас есть приложение, которое позволяет пользователю загружать с телефона изображения в некоторое хранилище. Очевидно, интернет не везде быстрый и надёжный. Хочется обеспечить возможность гарантированной загрузки новых картинок, не ожидая загрузки каждой отдельной.

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

А теперь представим, что в процессе загрузок аккумулятор телефона разряжается. Это и есть тот нюанс. В идеале, планировщик хранит список задач в ПЗУ. Например, планировщик может сохранять в файл на диске список изображений, подлежащих загрузке и «вычёркивать» оттуда те, которые были успешно загружены.

Возможно, есть что-то готовое, но я не встречал, честно говоря.
Ответ написан
qmax
@qmax Автор вопроса
программер
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы