首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何逐个管理上传操作

如何逐个管理上传操作
EN

Stack Overflow用户
提问于 2016-12-03 00:15:44
回答 1查看 23关注 0票数 0

我正在尝试将某些数据从iOS发送到在线MySQL数据库。服务器端使用PHP处理数据的接收和插入。

问题是我有几个数据包。关键是一个接一个地发送,这意味着我需要一种机制,让队列中的第二个数据包等待,直到iOS收到来自服务器的反馈,确认第一组数据已经存储到数据库中。

我最初尝试创建一个串行调度队列,目的是让iOS应用程序按顺序执行上传工作。虽然iOS端确实按顺序执行了工作,但每个任务只是“完成”了发送它的数据包,而不是等待数据是否已经插入数据库。然后问题是,由于网络连接等问题,在发送数据和将数据完全保存到服务器中的MySQL之间总是会有一段时间间隔。

因此,结果是数据可能不会以期望的顺序保存,一些较晚的数据可能会比先前的数据更早保存。

我猜缺少的是从服务器端到iOS端的“反馈”机制。

有没有人能建议一种方法来实现这种反馈机制,这样我就可以控制上传数据任务的顺序了。

非常感谢!

向您致敬,保罗

EN

回答 1

Stack Overflow用户

发布于 2016-12-03 00:32:45

如果你正在向服务器发送数据,那么大多数可用的框架都提供了回调。使用AFNetworking (或现在称为Almofire),它将如下所示:

代码语言:javascript
运行
复制
[[ConnectionManager instance] GET: @"link" parameters: nil
success:^(AFHTTPRequestOperation* operation, id responseObject)
{
}
failure:^(AFHTTPRequestOperation* operation, NSError* error)
{
}];

因此,您可以将代码放在给定的处理程序中,并不断发出请求。

您可能还想创建并发操作,并将这些操作放在OperationQueue上,同时设置适当的依赖关系,但这肯定会更耗时。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40936572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档