Frage

Ist es möglich, aus einer SQLite db zu lesen, während es geschrieben wird?

Ich bin mir bewusst, dass der Zugang für Schreibvorgänge blockiert wird, wenn es geschrieben wird, aber ist, dass das gleiche für liest?

War es hilfreich?

Lösung 2

Nach einigem Lesen um und sah durch den FMDB Code, entdeckte ich, dass ich nicht die SQLITE_BUSY und SQLITE_LOCKED Werte wurde mit Rückkehr richtig.

Nach dem FMDB Code, soll man Schleife für eine begrenzte Anzahl von Wiederholungen für eine kurze Zeit warten bewteen.

So implementiert ich, dass in meinem Code, und alles scheint gut zu funktionieren.

Andere Tipps

Es ist ein wenig verworren, aber überprüfe die File Locking und Concurrency Dokumentation SQLite. Es klingt wie wenn der db in exclusive gesperrten Modus ist, dass die einzige Zeit ist liest nicht erlaubt. Neben entriegelt, wenn der db nicht einmal geöffnet ist.

Ich bin nicht 100% sicher drauf, aber das ist, was ich denkt es bedeutet.

Ja, obwohl alle relevanten Multithreading Probleme müssen für Konto sein. Ich in der Regel offen mehr Griffe auf die gleiche DB-Datei über sqlite3_open_v2 ().

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top