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

ios - 在后台暂停订阅 UI 更新并在前台重新启动?

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

我有许多更新 UI 的订阅,但我想在应用进入后台时暂停它们,因为它们仍在触发和更新我的 View Controller 的某些部分。

在后台处理内存和不必要的 UI 更新的最佳方法是什么?



Best Answer-推荐答案


我想这取决于您的应用在后台执行的操作。

也许是:

  • 是不是一个timer/interval一直在走。
  • 尚未返回或连接到 WebSocket 的网络请求的 Observable
  • 一个Observable,它监听屏幕方向变化等系统事件。

根据您关心的Observable,您可能希望以不同的方式处理它。对于网络请求,您可能想要取消它,或者可能取消它然后在前台重新启动它。如果是像方向改变这样的系统事件,您可能只想在前台获取当前值。

无论如何,我不得不问,你为什么这么关心内存?我想说,让 iOS 处理系统内存问题。如果它决定终止您的应用,您的 Disposable 应该自行正确清理(如果您正确使用 DisposeBag)。然后,您应该只关心您的应用程序保持足够的状态,以便它可以从中断的地方继续(在正确的页面上等)。我不建议代表 iOS 尝试过度优化。只要 iOS 允许,让您的应用程序继续运行。您的用户可能只是在几秒钟内跳转到另一个应用程序。

关于ios - 在后台暂停订阅 UI 更新并在前台重新启动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39583139/

回复

使用道具 举报

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

本版积分规则

关注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