On 15 Feb 2018, at 5:30pm, Dan Kennedy <[email protected]> wrote:
> (B) is an understandably common misconception. sqlite3_shutdown() frees
> resources that were allocated by sqlite3_initialize() or
> sqlite3_auto_extension() and must be called after all SQLite connections have
> been closed. These resources are either trivial or non-existent on almost all
> platforms - so in practice sqlite3_shutdown() is only useful on embedded
> systems that do not free such resources automatically when a process exits,
> or in other obscure circumstances.
>
> Don't call sqlite3_shutdown()!
Thanks for your informative correction. Is there a chance of amending the
documentation with the above text ? I have two problems with the existing
documentation:
1) I can't be the only programmer who learned to make paired calls ("If you
initialise something, it needs deinitializing, if you allocate something,
deallocate it.").
2) I thought that sqlite3_shutdown() called sqlite3_close() on any open
connections. In other words, that if keeping track of your connections was
difficult it might be simpler to just call sqlite3_shutdown().
Simon.
_______________________________________________
sqlite-users mailing list
[email protected]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users