• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - 在 iOS 中为 NSURLSession 使用后台线程或后台传输服务有很大区别吗

[复制链接]
菜鸟教程小白 发表于 2022-12-12 10:29:00 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我基本上是在寻找为什么我们有能力在 iOS 中执行后台线程时能够使用后台传输服务执行 NSURLSession。

区别大吗?



Best Answer-推荐答案


是的,有很大的不同。这是两种不同的“背景”概念。

后台 NSURLSessionConfiguration 继续运行与其关联的 NSURLSession 任务的查询,即使您的应用不再处于事件状态,即如果用户离开应用和应用被暂停(或者即使在应用程序的正常生命周期过程中随后终止)。后台请求完成后,如果您的应用程序尚未运行,它将在后台重新启动您的应用程序,以便您可以快速处理响应,然后在完成后再次暂停/终止它。

另一方面,向后台线程提交内容与主线程并行执行(即不会阻塞主线程),但不会在应用程序终止后继续运行。它用于以不会阻塞主线程的方式执行一些慢速任务(即最小化对用户界面的影响)。

在后台线程中运行标准 NSURLSession 请求的概念在很大程度上是多余的,因为无论如何 NSURLSession 总是异步运行。在后台线程上运行它几乎没有什么好处。 (当然,如果委托(delegate)方法和/或完成 block 正在做一些不平凡的事情,您可能会在后台队列上运行它们,但标准 NSURLSession 任务本身已经异步运行。

关于ios - 在 iOS 中为 NSURLSession 使用后台线程或后台传输服务有很大区别吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35301693/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap