我正在使用performBlock
我的NSManagedObjectContexts
,以便我的更改发生在给定上下文的正确队列上。我的问题是 - 如果我要进行大量更改并从内部调用方法performBlock
- 是否有一种简单的方法可以确保我使用来自正确上下文的对象。
例子:
我有一个activeAccount
iVar(在 Main Queue 上创建),它是NSMangedObject
应用程序中当前帐户的一个。我有一些使用activeAccount
对象执行某些任务的实例方法——获取数据、设置数据。所以我的问题是,如果我在后台做某事NSManagedObjectContext
并调用其中一种共享方法 - 是否有我可以使用的模式,以便在这些方法中我知道使用当前activeAccount
iVar 或获取新的 iVar。另外,如果我需要做一些需要NSManagedObjectContext
- 我怎么知道要获取/使用哪一个。
我知道NSManagedObjectContext
使用哪个方法的一种方法是我有一个方法来检查它是否在当前线程上运行 - 然后它知道返回主线程的上下文或后台线程的上下文。另外,如果我在后台线程上,是否允许我读取位于activeAccount
主线程上的对象 ID,以便我可以在后台线程上获取它的副本?提前致谢。