我正在开发一个mongodb项目,需要锁定db以便在一个线程中读取。我正在使用这个:
OperationContextImpl txn;
ScopedTransaction scopedXact(&txn, MODE_IS);
AutoGetDb autoDb(&txn, "db1", MODE_S);
Database* db = autoDb.getDb();
它在主线程中作为mongod工作但是如果我把它放在另一个线程中,我得到了这个异常并且mongodb异常退出:
Pure call handler invoked writing minidump diagnostic file xx.mdmp immediate exit due to invalid pure
我想我对db lock的使用应该有问题。有什么建议?感谢