Ios 当从领域中删除实际对象时,独立对象如何受到影响?

Ios 当从领域中删除实际对象时,独立对象如何受到影响?,ios,objective-c,realm,Ios,Objective C,Realm,假设我有一个名为standAloneObject的独立对象,它是使用initWithValue方法从原始对象(名为originalObject)创建的。如果我从领域中删除originalObject,它会使StandalOnObject无效吗?如果没有,是否可以使用createOrUpdateInRealm:withValues:重新添加对象 如果它有任何重要性,这都是在主线程上完成的 编辑: 这是我试图做的一个非常简化的版本,但它有效地抓住了我试图做的本质 如果我从领域中删除originalO

假设我有一个名为standAloneObject的独立对象,它是使用initWithValue方法从原始对象(名为originalObject)创建的。如果我从领域中删除originalObject,它会使StandalOnObject无效吗?如果没有,是否可以使用createOrUpdateInRealm:withValues:重新添加对象

如果它有任何重要性,这都是在主线程上完成的

编辑:

这是我试图做的一个非常简化的版本,但它有效地抓住了我试图做的本质

如果我从领域中删除originalObject,它会使StandalOnObject无效吗

否。由
initWithValue:
创建的独立对象与领域隔离。它只是一个物体。(因此独立对象可以跨线程传递。)

如果没有,是否可以使用createOrUpdateInRealm:withValues:重新添加对象

对。您可以使用
createOrUpdateInRealm:withValues:

如果我从领域中删除originalObject,它会使StandalOnObject无效吗

否。由
initWithValue:
创建的独立对象与领域隔离。它只是一个物体。(因此独立对象可以跨线程传递。)

如果没有,是否可以使用createOrUpdateInRealm:withValues:重新添加对象


对。您可以使用
createorupdateinrelm:withValues:

重新添加独立对象,这正是我所想的,但是当我尝试此操作时,我会从realm中抛出一个异常。例外情况是“RLMEException-不允许向领域添加已删除或无效的对象”。我可以做些什么来找出导致此问题的原因?我还注意到,在调试器中,当我删除originalObject时,我无法再打印StandalOnObject的描述。@Jaspercan您可以通过更新问题来共享代码吗?按要求完成。谢谢你的帮助!:)这正是我所想的,但是当我尝试这个时,我从领域中抛出了一个异常。例外情况是“RLMEException-不允许向领域添加已删除或无效的对象”。我可以做些什么来找出导致此问题的原因?我还注意到,在调试器中,当我删除originalObject时,我无法再打印StandalOnObject的描述。@Jaspercan您可以通过更新问题来共享代码吗?按要求完成。谢谢你的帮助!:)你的代码中有一些编译错误,所以我修复了。如果上面的代码是正确的,我不能重现任何错误。如果您仍然有错误,请将您的可复制项目发送到help@realm.io为了调查。你的代码中有一些编译错误,所以我修复了。如果上面的代码是正确的,我不能重现任何错误。如果您仍然有错误,请将您的可复制项目发送到help@realm.io进行调查。
MyRLMObject *standAloneObject = [[MyRLMObject alloc] initWithValue:persistedObject];
RLMRealm *defaultRealm = [RLMRealm defaultRealm];
[defaultRealm beginWriteTransaction];
[defaultRealm deleteObject: persistedObject];
[defaultRealm commitWriteTransaction];

[defaultRealm beginWriteTransaction];
[defaultRealm addOrUpdateObject:standAloneObject];
[defaultRealm commitWriteTransaction];