Hello, Whats the difference between these two options for the SQLITE_THREADSAFE compile time flag?
From the docs: (1, SERIALIZED) - Safe for use in a multithreaded environment - Enables all mutexes including the recursive mutexes on database connection and prepared statement objects. - The SQLite library will itself *serialize access to database connections* and prepared statements (2, MULTITHREAD) - Can be used in a multithreaded program so long as no two threads attempt to use the same database connection (or any prepared statements derived from that database connection) at the same time. When SQLITE_THREADSAFE=(1, SERIALIZED), how are the reads/writes queued? Is it per connection, file, or process? What happens when a request is in the queue, does it just wait until it can be actioned, or return SQLITE_BUSY? On a 8 core machine, how would I get optimal read throughput from a single database file? If I have many database connections to the same file, can they all read concurrently on all cores? Thanks, _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users