执行此行时,我在 iOS 中频繁发生 EXC_BAD_ACCESS 崩溃:
while (sqlite3_step(statement) == SQLITE_ROW) {
}
它用于在我的 (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
函数中传递结果。
有什么想法吗? SQL 等看起来不错,数据库正在后台线程中更新,之后我调用前台线程更新 UI。
最佳答案
如果您的数据库在后台更新,而您在前台线程中访问它,我强烈建议您使用某种阻塞机制来防止竞争情况。我不认为 sqlite 是线程安全的。
关于iphone - 使用 sqlite3_step(statement) 进行不一致但频繁的 EXC_BAD_ACCESS 访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9567175/