看看这个WWDC 2018视频:
https://developer.apple.com/videos/play/wwdc2018/714/?time=1897
大约31:30,我们看到一张幻灯片,听到一个旁白,说我们可以在后台队列中调用URLSession的任务resume
,并且该队列的服务质量(“ QoS”)将用于优先处理请求。
酷!我不知道所以我可以这样说:
DispatchQueue.global(qos: .background).async {
task.resume()
}
但是,下一句话说:“发送给您的代表的所有消息都将遵守此QoS。”
真的吗?凭什么?我尝试检查委托回调的线程,并且它们 not 不会在同一全局队列中被自动回调。而且我不知道该如何表征或检测当前队列/线程的QoS。此外,如果您提供委托,则您在任何情况下都必须指定一个回调队列。那句话到底是什么意思?