Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/102.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 在不同的对象上调用savefinally-它们是否以相同的顺序保存?_Ios_Parse Platform - Fatal编程技术网

Ios 在不同的对象上调用savefinally-它们是否以相同的顺序保存?

Ios 在不同的对象上调用savefinally-它们是否以相同的顺序保存?,ios,parse-platform,Ios,Parse Platform,我在我的解析驱动的应用程序中使用savefinally,这样,如果连接出现问题,我的应用程序仍能正常工作 我在文档中看到,它说您可以对单个对象多次调用savefinally,并且save操作按调用顺序排队 我需要先保存一个对象,然后保存另一个对象。在这种情况下,我是否也可以依赖于这些操作排队,以便第二个对象始终保存在第一个对象之后?如果我有100个对象并逐个调用savefinally,它会继续正确排队吗?不总是这样。它们不能保证以相同的顺序保存,但您始终可以这样做,以确保object1之后保存o

我在我的解析驱动的应用程序中使用savefinally,这样,如果连接出现问题,我的应用程序仍能正常工作

我在文档中看到,它说您可以对单个对象多次调用savefinally,并且save操作按调用顺序排队


我需要先保存一个对象,然后保存另一个对象。在这种情况下,我是否也可以依赖于这些操作排队,以便第二个对象始终保存在第一个对象之后?如果我有100个对象并逐个调用savefinally,它会继续正确排队吗?

不总是这样。它们不能保证以相同的顺序保存,但您始终可以这样做,以确保object1之后保存object2

[object1 saveEventually:^(BOOL succeeded, NSError *error) {
    [object2 saveEventually];
}];
或者类似于:

[object1 saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
    [object2 saveInBackground];
}];

唯一的问题是,如果在应用程序终止之前,
savefinally
调用没有完成,它将在下次运行应用程序时重试,但没有成功块,因此
object2
可能永远无法保存。@TimothyWalters这听起来是个严重的问题。你在哪里听到的?另外,你知道有什么解决方案吗?它出现在旧的帮助论坛上,但是如果你想一想,在应用程序关闭后,不支持完全保存类似的状态。完成块只应用于更新UI,不应包含
savefinally
的更多核心逻辑,另一种方法是使用
saveInBackground
和您自己的重试逻辑,并保存对象,以便在应用程序重新启动前无法完成时可以重试。@Timothy谢谢