enhancementhelp wanted
Description
Hi,
Current version of LevelDB has detached background thread that can't be stopped and each environment calls std::abort() in destructor.
This behavior prevents using of LevelDB in plugin dlls that can be started and stopped when main application still runs.
I think it is better to allow background thread to finish tasks in queue and then exit, when environment is being destroyed. That will make database loadable and unloadable.