My application does a VACUUM everytime it is launched. This slows down the application a little (it's a plugin for Outlook so it freezes Outlook for a second or two at most, but users could find that annoying). So I was wondering if my app has a sqlite3* pointer to the database and another app does a VACUUM on the same database, will the pointer still be valid? I know that VACUUM actually deletes the database file and replaces it with another one so that's why I need to know if it's safe to do so. My point is that I could get the manager app to do the VACUUM a couple of times during the day so that loading time of the other app (the plugin) would be faster.
Why don't you VACUUM on exit? Outlook takes its time closing as it is... and another second or two closing is usually much less noticeable then making the user wait for the application to launch.
Guy

