【发布时间】:2017-09-16 05:07:55
【问题描述】:
我无法想出一种在 JSON 响应后从 SQLite DB 中删除信息的有效方法。
基本上我要做的是:
我有一个包含 100 条记录的数据库。
- 我看了第一条记录
- 构建 JSON 包并将其发送到我的 API。
- 等待 API 响应 Ok 或 Fail
- 从数据库中删除记录就OK了。
- 移至下一条记录。
在我可以删除并继续之前等待响应之间有一段时间。
一个简单的 FOR 似乎不起作用,因为它无法等待 API 的“OK”。
我查看了dispatch_async(dispatch_get_main_queue());,但如果 OK 出现并且数据库正在处理,它将在数据库被访问时锁定数据库,并且由于数据库被锁定而逻辑失败。
我需要两者的混合。有谁知道教程或从哪里开始这样的事情?
【问题讨论】:
-
你是不是要遍历这100条记录,询问远程服务“我可以删除这条吗?” - 每次都在等待回复?
-
是的,没错。
-
使用blocks接收异步响应,收到响应后在block中执行sqlite操作。
-
我用
dispatch_async queue尝试过,它只会创建多个实例并锁定数据库。
标签: ios objective-c json sqlite