12.2. Wykonywanie długotrwałych operacji w tle

Problem

Chcesz „pożyczyć” nieco czasu od systemu iOS w celu ukończenia długotrwałego zadania, kiedy aplikacja przechodzi do działania w tle.

Rozwiązanie

Użyj metody egzemplarza o nazwie beginBackgroundTaskWithExpirationHandler: klasy UIApplication. Po zakończeniu zadania wywołaj metodę egzemplarza endBackgroundTask: klasy UIApplication.

Analiza

Kiedy aplikacja iOS jest umieszczana w tle, następuje wstrzymanie działania wątku głównego. Działanie wątków utworzonych w aplikacji za pomocą metody klasy o nazwie detachNewThreadSelector:toTarget:withObject: klasy NSThread również zostaje wstrzymane. Jeżeli próbujesz dokończyć długo wykonywane zadanie podczas umieszczania aplikacji w tle, musisz wywołać metodę ...

Get iOS 5. Programowanie. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.