我使用SQLite数据库代替非常大的内存数据结构,因此我有一个简单的单线程进程,通过单个数据库连接重复读取和写入数据库。 (我直接在C ++应用程序中使用SQLite C API。)如果我执行写操作,我可以稍后在没有先执行COMMIT操作的情况下重新读取该数据吗?也就是说,当我打开文件,执行所有数据处理(交错读写),然后在关闭文件之前执行“COMMIT”时,是否可以执行“BEGIN TRANSACTION”?
我希望操作系统级别的文件缓冲区允许这种行为(例如,请参阅"Are Unix reads and writes to a single file atomically serialized?"),或者某种内部SQLite缓冲可能会发挥作用,但无法找到此解决方案特别是在任