sqlite3 多线程 并发

来源:互联网 发布:纽约大学gpa算法 编辑:程序博客网 时间:2024/04/30 19:29


前段时间做SQLITE3的增删改,需要考虑接口被多线程调用,于是看了下SQLITE3 的 Help Doc , 发现有些函数 (sqlite3_open_v2(), sqlite3_prepare_v2())是用来进行多线程的但是没看明白(英语不好啊,弱暴了),并且低版本的SQLITE3貌似并不支持sqlite3_open_v2()等函数.于是就放弃了.

sqlite3_open_v2 中 有个参数 是 SQLITE_OPEN_NOMUTEX 是用来标记多线程的


但是必须考虑多线程,首先想到的就是 pthread_mutex_lock()  doit   pthread_mutex_unlock()


还有一种方式就是

do{

}while(ret == SQLITE_BUSY)


这种就是靠SQLITE3内部锁,这种方法我觉得比较好



原创粉丝点击