我正在編寫一個使用核心數據的應用程序,但通過HTTP將其數據與服務器同步。我正在監視NSManagedObjectContext的通知,以便我可以響應數據中的更改。如何識別來自特定NSManagedObjectContext保存操作的通知?
更新基於最初的反應:感謝您的建議。似乎我需要更好地解釋:我在應用程序中使用Core Data,但也將更改發佈到服務器,並監視來自受管對象上下文的通知以執行此操作。
與此同時,我還定期輪詢服務器的更改。當服務器發生變化時,我相應地更新Core Data對象。但在這種情況下,我只想避免將新更改的本地數據發送回服務器(因爲這是來自哪裏的原因)只有。換言之,當我收到我想要識別並忽略的通知時,我想要抑制保存操作或上的通知。
我目前沒有對併發或線程做任何事情。如果這意味着我可以依靠託管對象上下文的保存通知以與保存操作完全相同的順序進入,那麼可以在保存之前簡單地設置一個標記。這會工作嗎?如果我想要在將來異步工作,仍然感覺混亂,如果有辦法將通知綁定到特定的保存操作或完全禁止保存通知,那將會更好。 )
看看我的新的答案。 – spudwaffle 2012-03-10 17:36:21