On Fri, 27 Dec 2019 at 06:11, Jens Alfke <j...@mooseyard.com> wrote: > > > On Dec 25, 2019, at 2:53 PM, Doug <dougf....@comcast.net> wrote: > > > > I wrote an application in Qt which uses SQLite. Therefore, I invoke > SQLite functions with some wrapper. For a 9% performance improvement in > SQLite using the direct call versus indirect call (as discussed in the > talk), cannot the wrapper functions be changed so my application doesn't > know the difference? > > This change would break the API that lets you set concurrency levels per > connection; instead, the concurrency would be hardcoded at compile time. > _You_ may not be using this API, but there are definitely developers who do. >
Note that API is already inherently unreliable though, as compiling with -DSQLITE_THREADSAFE=0 implies -DSQLITE_MUTEX_OMIT which eliminates the mutex calls entirely. Attempting to change the concurrency level at runtime via sqlite3_config() against such a binary will have no effect. (this is explained in the documentation for sqlite3_threadsafe()) -Rowan _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users