在AppDelegate的didFinishLaunchingWithOptions
:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(contextChanged:)
name:NSManagedObjectContextDidSaveNotification
object:nil];
这样我可以将更改合并到其他线程的数据中。
问题:我是否需要在applicationWillResignActive
或applicationWillTerminate
中删除此侦听器?看起来似乎没有意义。我想我是否在主循环中让这样的监听器永远不会被删除是否正常。
答案 0 :(得分:7)
你永远不能删除它,但如果你的应用程序在后台收到通知(在这种情况下不会发生),通知将排队并在应用程序再次启动时传递给应用程序(如果应用程序没有被杀死。)
如果您不希望在应用程序处于后台运行时发生通知,则可以在您指出的方法中删除侦听器。
在这种情况下,实际上,没关系。