如何在没有计时器的情况下每秒发送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,则可以知道最近的请求是在最后一秒内发出的。比执行其他逻辑。