美文网首页
防止线程在后台被挂起

防止线程在后台被挂起

作者: 崔又淇 | 来源:发表于2018-02-08 15:09 被阅读95次

防止线程在后台被挂起

在系统方法 - (void)applicationDidEnterBackground:(UIApplication *)application  中调用以下方法

UIApplication*  app = [UIApplication sharedApplication];

    __block    UIBackgroundTaskIdentifier bgTask;

    bgTask = [app beginBackgroundTaskWithExpirationHandler:^{

        dispatch_async(dispatch_get_main_queue(), ^{

            if (bgTask != UIBackgroundTaskInvalid)

            {

                bgTask = UIBackgroundTaskInvalid;

            }

        });

    }];

    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

        dispatch_async(dispatch_get_main_queue(), ^{

            if (bgTask != UIBackgroundTaskInvalid)

            {

                bgTask = UIBackgroundTaskInvalid;

            }

        });

    });

相关文章

网友评论

      本文标题:防止线程在后台被挂起

      本文链接:https://www.haomeiwen.com/subject/mzettftx.html