Ich habe eine Anwendung, die SQLite (Version 3.7.2) verwendet, um Daten zu speichern. Ich habe eine SQLite-Verbindung zwischen mehreren Threads geteilt, die aus derselben SQLite-Datenbank schreibt und liest. SQLite wird mit DSQLITE_THREADSAFE = 1 kompiliert, was bedeutet, dass SQLite im Serialisierungsmodus ist.SQLite: Verbindungen über Threads zum Lesen und Schreiben freigeben
von SQLite docs
Serialized Zitiert: In serialisierten Modus SQLite kann durch mehrere Threads ohne Einschränkung sicher verwendet.
Im Gegenteil des SQLite Wiki Eintrag sagt
nicht die gleiche Datenbankverbindung zur gleichen Zeit in mehr als ein Thread Verwenden Sie
ich mit einer Beispielanwendung versucht, den Spawns Hunderte von Threads und teilt eine SQLite-Handle zu lesen & schreiben, die gut funktioniert.
So ist der SQLite Wiki-Eintrag veraltet oder SQLite ist möglicherweise nicht in der Lage, Lesen und Schreiben von verschiedenen Threads zur gleichen Zeit mit der gleichen Verbindung zu behandeln?
Ich habe das gelesen, aber ich fragte mich, ob das Wiki veraltet war oder SQLite-Verbindung jetzt unterstützt "liest" und "schreibt" aus der gleichen Verbindung von mehreren Threads? – omggs
@omggs du hast Recht. Die Begriffe sind in SQLite-Dokumenten etwas verwirrend. Für mich * Multi-Thread * und * serialized * war das gleiche, aber sie sind nicht. Ich benutze serialisierte Verbindungen aber nicht geteilt zwischen Threads ... und jetzt habe ich gelernt, dass es sicher ist, zu teilen :) – devundef
Danke für die Bestätigung! SQLite Wiki ist in der Tat veraltet !!! – omggs