Цикл, чтобы выполнить пакетную работу, как вы показали, плохая идея.Если у вас есть тысячи файлов для скачивания, как вы восстанавливаетесь после ошибок?
Производительность зависит не только от конфигурации вашего компьютера, но производительность сети имеет решающее значение.
Вот несколько предложений.
Опция 1
Почему я использую очередь?Потому что вы можете легко повторить попытку ошибки.
Псевдокод
file_url_partitions <- partion_as_batches(all_urls, batch_size)
attempts = 3
while( file_url_partitions is not empty && attempt <= 3 ) {
batch = file_url_partitions.pop()
tryCatch({
download_parallel(batch)
}, some_exception = function(se) {
file_url_partitions.push(batch)
attemp = attempt+1
})
}
Примечание. У меня нет доступа к R studio / environment, поэтому нет возможности попробовать.
Вариант 2 Загрузка файлов отдельно с помощью менеджера загрузок / аналогичных и использование загруженных файлов.
Некоторые полезные ресурсы: https://www.r -bloggers.com/ r-with-параллельные вычисления с точки зрения пользователя / http://adv -r.had.co.nz / beyond-exception-processing.html