В настоящее время у меня есть набор сетевых запросов на запуск.
Проблема в том, что мне нужно упорядочить результаты, чтобы они соответствовали порядку, в котором я их запустил.
Мой текущий код следующий:
for url in config.fieldImages.map ({ URL(string: $0)! }) {
self.getWheelFieldImage(url: url)
.takeUntil(.inclusive, predicate: { (_) -> Bool in
images.count == config.fieldImages.count - 1
})
.subscribe(onNext: { (anImage) in
images.append(anImage)
}, onError: { (error) in
completion(nil, nil, error)
}, onCompleted: {
completion(images, false, nil)
self.lastUpdate = Date()
}, onDisposed: {
})
.disposed(by: self.disposeBag)
}
Мне интересно, есть ли простой способ упорядочить эти результаты в том же порядке, в котором я их запустил, используя RxSwift .
EDIT:
Я пытаюсь объяснить проблему лучше. У меня есть этот массив с N URL, и я запускаю запросы один за другим (1,2,3,4 ...).
Мне нужно вернуть результат этих запросов в том же порядке (R1, R2, R3, R4, где R1 - ответ на запрос 1 и т. Д ...), чтобы сохранить изображения в результирующем массиве.
Я могу подождать, пока все закончится. Нет проблем.