You will either be resuming from background, or starting new again.
If resuming from background, the background NSURLSession
should complete the tasks you queued, so long as you "retain/retained" it. My experience is background sessions work just fine in foreground, they are just limited (e.g. no data tasks).
If starting anew, you can "rewire" your background session by using the same configuration NSString
you used, e.g.
NSURLSessionConfiguration config =
[NSURLSessionConfiguration backgroundSessionConfiguration:sameStringHere];
Once "rewired", it should keep rolling.
Agreed about the docs.