Ich habe eine Anwendung, die SQLite (Version 3.7.2) zum Speichern von Daten verwendet. Ich habe eine SQLite-Verbindung, die von mehreren Threads geteilt wird, die in dieselbe SQLite-Datenbank schreiben und von ihr lesen. SQLite ist mit DSQLITE_THREADSAFE=1 kompiliert, was bedeutet, dass sich SQLite im Serialized-Modus befindet.
Zitiert von SQLite-Dokumente
Serienmäßig: Im serialisierten Modus kann SQLite sicher von mehreren Threads ohne Einschränkung verwendet werden.
Im Gegenteil, die SQLite-Wiki Eintrag sagt
D einem Thread
Ich habe es mit einer Beispielanwendung versucht, die Hunderte von Threads erzeugt und ein SQLite-Handle zum Lesen und Schreiben freigibt, was gut funktioniert.
Ist der SQLite-Wiki-Eintrag also veraltet oder kann SQLite möglicherweise nicht mit Lese- und Schreibvorgängen von verschiedenen Threads zur gleichen Zeit über dieselbe Verbindung umgehen?