【问题标题】:How to properly handle applicationWillTerminate in an iPhone app?如何在 iPhone 应用程序中正确处理 applicationWillTerminate?
【发布时间】:2009-06-18 08:34:44
【问题描述】:

我目前正在尝试编写一个 iPhone 应用程序,但在理解如何正确退出应用程序时遇到了一些麻烦。

基本上,我有一个向用户显示数据表的视图控制器。同时,当应用程序启动时,它会启动一个新线程来从服务器检索数据并在后台更新表。数据正在写入本地 sqlite 数据库。

我担心的是,如果没有适当的清理和终止,工作线程完全有可能在一个令人讨厌的地方(例如,在写入期间)终止,并使 sqlite db 损坏。如果要求应用程序终止,我想指示线程干净地退出。但是,据我所知,我的大多数对象甚至都没有调用 dealloc,因此实际上没有任何东西可以干净地退出。现在,我正在尝试处理 applicationWillTerminate 并可能在一两个重要的类上调用某种自定义 finalize 方法。

所以...

  1. 调用 applicationWillTerminate 是否有保证我必须响应并干净退出的时间窗口?
  2. 还有其他干净退出的建议吗?

【问题讨论】:

    标签: iphone objective-c


    【解决方案1】:

    当 applicationWillTerminate 被调用时,你有 5 秒的时间来做所有你想做的事情

    如果您的应用程序退出时间超过 5 秒,系统可能会直接终止它。

    http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/ApplicationEnvironment/ApplicationEnvironment.html

    【讨论】:

      猜你喜欢
      • 2012-04-30
      • 2017-05-10
      • 1970-01-01
      • 2016-01-01
      • 1970-01-01
      • 2010-12-02
      • 2011-09-05
      • 2011-03-23
      • 1970-01-01
      相关资源
      最近更新 更多