RxAlamofire разрыв между временем подписки и временем выпуска - PullRequest
0 голосов
/ 26 мая 2020

Мы делаем запросы с помощью RxAlamofire со следующим кодом

self.scheduler = ConcurrentDispatchQueueScheduler(qos: .userInitiated)
func postRequest(_ path: String, parameters: [String: Any]?) -> Observable<T> {
    let absolutePath = "\(endPoint)\(path)"
    return RxAlamofire
        .json(.post, absolutePath, parameters: parameters, encoding: JSONEncoding.default)
        .debug()
        .subscribeOn(scheduler)
        .retry(2)
        .observeOn(scheduler)
        .map({ json -> T in
            return try Mapper<T>().map(JSONObject: json)
        })
}

, и мы видим что-то очень странное между временем подписки и временем выпуска, например:

2020-05-26 17:46:41.020: Network.swift:213 (postRequest(_:parameters:)) -> subscribed
2020-05-26 17:47:01.535: Network.swift:213 (postRequest(_:parameters:)) -> Event next({

Мы отказались от проблемы с сервером, потому что у нас есть приложение Android, использующее те же веб-службы, и запросы не задерживаются. Мы также безуспешно использовали разные планировщики. Загрузка ЦП в этот период составляет 0%.

...