我使用sqlite数据库来存储数据。我的python程序有一个包含5个线程的线程池。我创建了一个数据库连接,并与所有5个线程共享,但有时它会抛出异常,而这个异常不是由任何sqlite异常或泛型异常捕获的,我的python脚本会自动终止。在寻找解决办法之后,我遇到了
How to share single SQLite connection in multi-threaded Python application
我创建了一个单独的连接,如下所示class ProcessJob(object):
....
def process_job(self):
job = queue.get()
if job = 'xyz':
with sqlite3.connect(database_path, check_same_thread=False, timeout = 10) as db_conn:
db_conn.execute("insert query on table ABC")
db_conn.commit()
elif job = 'pqr':
with sqlite3.connect(database_path, check_same_thread=False, timeout = 10) as db_conn:
db_conn.execute("update query on table ABC")
db_conn.commit()
elif job = 'mno':
with sqlite3.connect(database_path, check_same_thread=False, timeo