我有一个看起来像这样的数据结构-
------
|List| => Entity1 -> Entity2 -> Entity3 -> Entity4 -> NULL
------
这个想法是让用户在移动设备上创建一个List
具有有序集合的Entity
s 并将其保存在服务器上。
用户可以对 theList
和Entity
s 进行的操作是
- 添加实体
- 删除实体
- 删除一个列表(这意味着遍历整个列表并删除一个实体)
- 插入实体
- 移动实体
在那里的服务器上,可以有数百个这样的列表。
问题是这样的链表应该如何存储在云端。我应该按照本地的方式来做吗,那就是
- 在服务器上创建列表的头部
- 使用指向列表头部的指针获取响应
- 在服务器上创建实体
- 将指向该实体的指针添加到列表的头部作为起始实体
问题是每次创建新列表时,都会引入一些同步问题。基本上,假设步骤 1-3 完成后移动连接丢失,则实体丢失并且无法从链表中检索。
当一个过程不能一次性完成时,有没有更好的方法来防止这种损失?