SQLite
 sql >> Datenbank >  >> RDS >> SQLite

Wie Thread-sicher ist EnableWriteAheadLogging im Kontext der realen Nutzung und der SQLite-Dokumentation?

Das hat nichts mit Thread-Sicherheit zu tun .

Im WAL-Modus blockiert ein Schreiber keine Leser, daher hält das Android-Framework es für eine gute Idee, in diesem Fall einen größeren Verbindungspool zu verwenden.

Oder vielleicht auch nicht, wie dieser Kommentar zeigt:

private void setMaxConnectionPoolSizeLocked() {
    if ((mConfiguration.openFlags & SQLiteDatabase.ENABLE_WRITE_AHEAD_LOGGING) != 0) {
        mMaxConnectionPoolSize = SQLiteGlobal.getWALConnectionPoolSize();
    } else {
        // TODO: We don't actually need to restrict the connection pool size to 1
        // for non-WAL databases. There might be reasons to use connection pooling
        // with other journal modes. For now, enabling connection pooling and
        // using WAL are the same thing in the API.
        mMaxConnectionPoolSize = 1;
    }
}