如何检查SQLite连接的线程模式?

时间:2010-11-12 07:41:14

标签: sqlite

是否可以检查活动SQLite连接的threading mode?我知道sqlite3_threadsafe(),但是

  

sqlite3_threadsafe()函数的返回值仅显示线程安全的编译时设置,而不显示sqlite3_config()对该设置的任何运行时更改。

2 个答案:

答案 0 :(得分:0)

以下是部分答案:

sqlite3_mutex *sqlite3_db_mutex(sqlite3*);
     

此接口返回指针   序列化的sqlite3_mutex对象   访问数据库连接   在论证中给出的时候   线程模式是序列化的。如果   线程模式是单线程或   多线程然后这个例程返回   一个NULL指针。

现在我只需要一种方法来区分单线程和多线程...

答案 1 :(得分:0)

嗯,七岁的问题。不过你已经自己回答了。对于下一个看来的人:

如果线程模式是单线程或多线程,则

sqlite3_mutex将返回NULL。

所以我们有:

(sqlite3_threadsafe,sqlite3_mutex):线程模式

(0,NULL):单线程

(1,NULL):Mutli-thread

(1,有效):序列化