所以基本上我要做的是创建一个后台线程,其中所做的只是观察要发布的通知,然后在发布时对其进行一些处理。我找不到办法做到这一点。有帮助吗?感谢。
答案 0 :(得分:0)
最简单的方法可能是NSNotificationCenter的-addObserverForName:object:queue:usingBlock。我会先尝试一下,但我相信这有一些问题,所以如果不能满足你的需求,这里有另一种选择:
...
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(processNotificationInBackground:) name:TheNameOfTheNotification object:nil];
...
- (void) processNotificationInBackground:(NSNotification *)not {
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
/* your background notification processing code goes here */
/* note that you should transfer control back to the main queue if you need to update your UI */
}
}