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