2

我有 2 个 NSManagedObjectContext:

  1. 上下文A
  2. 上下文B

在 ContextA 中,我设法获取了实体的 NSManagedObjectID。然后我使用这个对象 ID 来获取 ContextB 中的 NSManagedObject。这很好用,但我想知道这是否安全。或者,如果您有更好、更安全的方法来做到这一点,请告诉我。

谢谢你。

4

2 回答 2

4

isTemporaryID如果在 ContextA 中返回 NO,这是安全的。否则,保存临时对象时,将创建一个新 ID,您可能在 ContextB 中找不到它。

如果 ContextA 和 ContextB 是在不同的线程上创建的,并且您想在两者中访问相同的对象,那么您正在执行的操作是必需的。

于 2013-10-02T01:54:03.537 回答
0

这是安全的。文档一直明确表示您应该跨上下文使用 objectID。

于 2013-10-02T03:44:37.017 回答