sqlite数据库中无表格的问题
发布时间:2026.06.24
sqlite数据库对多线程支持的不好,将数据库拷贝到沙盒中时不要在线程中执行,否则会导致拷贝一个空库,也就是里面的表格不存在,导致服务器上的数据无法缓存在本地。
在SceneDelegate的sceneWillEnterForeground函数中,有如下代码:
[[CSocPrinter sharedInst]tryConnectEx:nil];
tryConnectEx会启动线程尝试连接打印机,就会访问两个本地库localbuf.db和socconfig.db,第一次OPEN这两个库时就会尝试把它们拷贝到沙盒,如果沙盒中已经有了就直接返回。
所以要在线程执行前,在主线程中把这两个库拷贝到沙盒里。
上一篇:需要将m文件的后缀改为mm
下一篇:没有了!
