Take a look at this WWDC 2018 video:
https://developer.apple.com/videos/play/wwdc2018/714/?time=1897
At about 31:30, we see a slide and hear a narration that says we can call a URLSession's task's resume
on a background queue, and that the quality of service ("QoS") of this queue will be used to prioritize the request.
Cool! I didn't know that. So I can say something like this:
DispatchQueue.global(qos: .background).async {
task.resume()
}
However, the next sentence says that "all the messages that it sends to your delegates will respect this QoS."
Really? In what sense? I have tried to examine the threading of the delegate callbacks, and they are not being automatically called back on the same global queue. And I don't know how else to characterize or detect the QoS of the current queue/thread. Moreover, if you supply a delegate, you must specify a callback queue in any case. So what does that sentence mean, exactly?