Swift - определенное количество запросов URL в секунду без таймера - PullRequest
0 голосов
/ 19 января 2019

Как отправить 3 запроса в секунду без таймера?

    oq = OperationQueue.main
    oq.maxConcurrentOperationCount = 1
    oq.qualityOfService = .background
    oqSession = URLSession(configuration: .default, delegate: self, delegateQueue: oq)
    oqSession.dataTask(with: URL(...)!, completionHandler: { (data, response, error) in....

1 Ответ

0 голосов
/ 19 января 2019

Вы можете выполнить следующие шаги:

  1. Добавить переменную lastRequest типа Date
  2. Установить эту переменную на текущую дату (выполнив lastRequest = Date()) каждыйвремя выполнения запроса .
  3. Прежде чем запрос может быть выполнен, сравните lastRequest с текущей датой.Если разница больше 1000 (думаю, это секунда), вы можете выполнить шаг 2. Однако, если он меньше 1000, вы знаете, что последний запрос был сделан в течение последней секунды.Чем выполнять другую логику.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...