在我的 iOS 应用程序中,我在后台线程中下载了大量数据。我需要做的是以某种方式检查用户何时重新打开应用程序,如果此任务仍在运行或已被取消。
例如,如果用户点击主页按钮,然后返回应用程序,线程将继续,这很好。但是,如果线程以某种方式被操作系统破坏了怎么办。我如何在应用程序简历上知道线程是否正在运行。
谢谢!
一些代码:
// Starts a background thread and also allows it to run in the background if the user exits app
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
UIBackgroundTaskIdentifier bgTask = 0;
bgTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
[self endBackgroundUpdateTask:bgTask];
}];
// Code here to run in background
// Tell the main thread its done, and also remove itself from background execution
dispatch_async( dispatch_get_main_queue(), ^{
NSLog(@"Done with background thread");
[self endBackgroundUpdateTask:bgTask];
});