1

書き込み中にSQLite dbから読み取ることは可能ですか?

書き込み時にアクセスがブロックされることは承知していますが、読み取りも同じですか?

4

3 に答える 3

1

少し読んでFMDBコードを調べたところ、SQLITE_BUSYとSQLITE_LOCKEDの戻り値が正しく使用されていないことがわかりました。

FMDBコードによると、限られた回数の再試行をループし、しばらく待つ必要があります。

だから私はそれを私のコードに実装しました、そしてすべてがうまくいくようです。

于 2009-08-24T18:23:09.587 に答える
1

少し複雑ですが、SQLiteのFile Locking and Concurrency documentationを確認してください。データベースがexclusiveロックモードの場合、読み取りが許可されないのはそのときだけです。ロックが解除されている以外に、データベースが開いていない場合。

100% 確信があるわけではありませんが、それが意味することだと思います

于 2009-08-20T11:00:51.160 に答える
0

はい。ただし、関連するマルチスレッドの問題をすべて考慮する必要があります。通常、sqlite3_open_v2() を使用して、同じ DB ファイルへの複数のハンドルを開きます。

于 2009-08-20T11:04:02.027 に答える