这是我的场景,
当我登录我的应用程序时,我有多个请求,其中一个响应包含 10,000 多条记录。
我在我的项目中使用 SQLite.swift。
如果用户不注销或不超过 1 项任务(例如从 db 搜索或检索数据),则一切正常。如果发生任何情况,则应用程序会卡住或崩溃。
我正在使用事务进行批量插入,但是当我尝试访问另一个相同的表数据时,应用程序会冻结,直到一切都完成。
我尝试使用多个连接插入到数据库,但如果另一个连接正在使用数据库,那么它的锁定和应用程序崩溃
致命错误:“试试!” 表达式意外引发错误:数据库已锁定:文件 /Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-703.0.18.1/src/swift/stdlib/public/core/ErrorType.swift,第 54 行
try DataManager.con.transaction {
for index in 0 ... (entity.count - 1) {
try DataManager.con.run(table.insert(
Latitude <- entity[index]["Latitude"].string,
Longitude <- entity[index]["Longitude"].string
))
}
}
这里 DataManager.con 是一个单例对象
请帮忙。