无提示推送通知使主线程上的任务停止运行

时间:2015-04-15 07:51:56

标签: ios multithreading apple-push-notifications grand-central-dispatch dispatch-async

当我在设备上收到静音推送通知时。它阻止了在主线程上运行的其他任务,这导致了我的问题。我的应用程序将始终在后台运行。我还尝试将dispatch_async用于静默推送停止的其他任务,然后在静默推送的处理程序方法被命中时也是如此。它正在阻止正常流动。有没有解决这个问题的方法。 非常感谢任何帮助。

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{ // 1
    if (initListner == NULL) {
        initListner = [[InitializeListeners alloc]init];
    }
    [initListner stopNotifying];
    [initListner startNotifying];
    if (bgTask == UIBackgroundTaskInvalid) {
        bgTask = [application beginBackgroundTaskWithExpirationHandler: ^ {
            [self BackgroundtaskInvalidate];

           }];
      }
    });

你可以在" BackgroundtaskInvalidate"并且在发生此问题的同时发出静音推送通知

0 个答案:

没有答案