7
我看到我的讀取被寫入WAL模式的數據庫所阻塞 - 我很難理解爲什麼。SQLite數據庫(與WAL)在準備「選擇」的時候鎖定 - 爲什麼?
我的設置:
- sqlite3的數據庫,journal_mode = WAL,同步= NORMAL
- 多張C++的工序(3是精確的)使用的數據庫 - 開放這些過程中的任何方法和關閉自己的非與
sqlite3_open_v2
共享連接。 - 方法,這些方法將數據
SQLITE_OPEN_READWRITE
模式下打開數據庫 - 中的方法從數據庫中讀取(即只執行Select語句)在
SQLITE_OPEN_READONLY
模式
在WAL模式打開數據庫,我相信它應該是在發生寫入時可能有併發讀取器。
但我看到「數據庫已鎖定」當我準備用sqlite3_prepare_v2
什麼可能我是做錯了,這是造成讀者被阻塞的select語句?我誤解了「閱讀」究竟是什麼?
任何提示讚賞,
謝謝:)