當一個iOS應用被送到後臺,它的主線程會被暫停。你用NSThread的detachNewThreadSelector:toTar get:withObject:類方法創建的線程也被掛起了。如果你想在後臺完成一個長期任務,就必須調用UIApplication的beginBackgroundTaskWi
當一個iOS應用被送到後臺,它的主線程會被暫停。你用NSThread的detachNewThreadSelector:toTar get:withObject:類方法創建的線程也被掛起了。如果你想在後臺完成一個長期任務,就必須調用UIApplication的beginBackgroundTaskWithExpirationHandler:實例方法,來向iOS借點時間。UIApplication的backgroundTimeRemaining屬性包含了程式完成他的任務可以使用的秒數。如果在這個期限內,長期任務沒有被完成,iOS將終止程式。每個對beginBackgroundTaskWithExpirationHandler:方法的調用,必須要相應的調用endBackgroundTask:方法(UIApplication的另一個實例方法)。