I don't think it's that uncommon to ask the user of the statement to finalize database resources explicitly, even in a managed environment. For example, Java collects memory, but the programmer must explicitly close network, file, database, and other resources. In java, I do this in a finally block. In c++, I do it using a stack based destructor guard.
Pat -----Original Message----- From: Florian Weimer [mailto:[EMAIL PROTECTED] Sent: Friday, June 02, 2006 9:19 AM To: sqlite-users@sqlite.org Subject: Re: [sqlite] Multithreading. Again. > As long as no prepared statements are outstanding, you should > be safe moving sqlite database connections across threads, as > of version 3.3.1. The rules are not really quite that strict, > but the exact rules are more complex and this strict rule > gives you an extra margin of safety. Is it possible to finalize statements in a separate thread? This would be a rather important feature because on most multi-threaded VMs, user-defined finalizers (which would be used to clean up SQLite objects which are no longer used) run in a separate thread.