2016-03-05 128 views
0

我读SDImageCache的源代码。发送UIApplicationWillTerminateNotification后,系统需要多长时间才能杀死应用程序?

基本上应用之前每次被杀死,在UIApplicationWillTerminateNotification,SDImageCache旅行的每一个文件的缓存,识别那些过期并删除它们。

请问系统等待这种类来完成它的工作之前杀死的应用程序?或删除过程将被粗暴中断?

难道这类要求更多的时间来处理?

回答

1

即通知applicationWillTerminate:后立即发送发送到您的应用程序代理。从UIApplicationDelegate's documentation,你有大约5秒。

此方法的实现大约需要五秒钟来执行任何任务并返回。如果该方法在时间到期之前没有返回,系统可能会完全终止该过程。

但是,您不应该依赖5秒钟,而是使用Instruments来提高代码的性能以尽可能快。如果您担心需要超过5秒钟,则可以使用beginBackgroundTaskWithExpirationHandler:请求更多。

相关问题