2016-03-05 125 views
0

我讀SDImageCache的源代碼。發送UIApplicationWillTerminateNotification後,系統需要多長時間才能殺死應用程序?

基本上應用之前每次被殺死,在UIApplicationWillTerminateNotification,SDImageCache旅行的每一個文件的緩存,識別那些過期並刪除它們。

請問系統等待這種類來完成它的工作之前殺死的應用程序?或刪除過程將被粗暴中斷?

難道這類要求更多的時間來處理?

回答

1

即通知applicationWillTerminate:後立即發送發送到您的應用程序代理。從UIApplicationDelegate's documentation,你有大約5秒。

此方法的實現大約需要五秒鐘來執行任何任務並返回。如果該方法在時間到期之前沒有返回,系統可能會完全終止該過程。

但是,您不應該依賴5秒鐘,而是使用Instruments來提高代碼的性能以儘可能快。如果您擔心需要超過5秒鐘,則可以使用beginBackgroundTaskWithExpirationHandler:請求更多。

相關問題