To fully utilize concurrency, SQLite3 allows threads to access the same connection in three ways:
I wrote a library to solve this. Works for me.
https://github.com/palantir/sqlite3worker