0

非常に大きなメモリ内データ構造の代わりに SQLite データベースを使用しているため、単一のデータベース接続を介してデータベースの読み取りと書き込みを繰り返す単純なシングルスレッド プロセスがあります。(私は C++ アプリケーション内から SQLite C API を直接使用しています。) 書き込み操作を実行した場合、最初に COMMIT 操作を実行せずに後でそのデータを読み込むことはできますか? つまり、ファイルを開くときに「BEGIN TRANSACTION」を実行し、すべてのデータ処理 (読み取りと書き込みのインターリーブ) を実行してから、ファイルを閉じる直前に「COMMIT」を実行することはできますか?

私は、OS レベルのファイル バッファがこの種の動作を可能にすることを望んでいました (たとえば、「Unix の読み取りと書き込みは単一のファイルにアトミックにシリアル化されていますか?」を参照してください)、またはおそらく何らかの内部 SQLite バッファリングが機能するようになるでしょうが、これが具体的にどこにも対処されているのを見つけることができませんでした。

4

0 に答える 0