标签: sqlite hook multiprocess
我在多进程场景中使用sqlite。 sqlite库是使用线程安全的序列化模式(-DSQLITE_THREADSAFE=1)编译的。
-DSQLITE_THREADSAFE=1
我希望收到有关datachanges的通知,并找到sqlite3_update_hook。每个进程都会注册它自己的更新挂钩,以通知数据库的更改。
sqlite3_update_hook
现在的问题是:如果进程A修改了数据库,是否会调用进程B的更新挂钩?或者钩子只能在同一个进程或同一个连接中工作吗?
可悲的是,文档对此并不十分清楚。
答案 0 :(得分:2)
documentation说:
sqlite3_update_hook()接口使用第一个参数标识的数据库连接注册回调函数
数据库连接是本地对象;在此过程或其他过程中,钩子不会为任何其他连接触发。