如何在没有计时器的情况下每秒发送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....

最佳答案

您可以按照以下步骤操作:


添加类型为lastRequest的变量Date
每次发出请求时,将该变量设置为当前日期(通过执行lastRequest = Date())。
在发出请求之前,请将lastRequest与当前日期进行比较。如果差异大于1000(我认为是一秒),则可以执行步骤2。但是,如果差异小于1000,则可以知道最近的请求是在最后一秒内发出的。比执行其他逻辑。

09-30 23:55