我在使用fmdb将数据读写到同一个数据库时遇到了问题。在相同的后台线程上运行FMDB进程?
在我的应用程序中有一些实例,其中一个类将数据写入数据库中的后台线程,而另一个类将从主线程上的同一数据库读取数据,读取和写入过程处理相当大的数据,几百个NSDictionary。
我听说fmdb不是“线程安全的”,当我尝试读取和写入上述场景时,会导致应用程序崩溃。我也听说过在同一个线程上运行2个fmdb进程的建议,这样应用程序不会崩溃。我试过在后台线程(使用NSInvocationOperation)中运行它们,但它崩溃了,我意识到它们实际上是在单独的后台线程上运行导致冲突。
所以问题是,我如何让所有的fmdb进程在同一个后台线程上运行,以便它们不会使我的应用程序崩溃?
还有处理我的SQL数据的任何替代品吗?
*对不起,如果我没有解释清楚,愿意澄清。
感谢您的阅读!