我对 MongoDB 还是个新手。我的测试 C++ 应用程序由许多目标文件组成,其中两个有自己的 MongoDB 实例。我发现这是一个错误,因为我有一个异常(exception):
terminate called after throwing an instance of 'mongocxx::v_noabi::logic_error'
what(): cannot create a mongocxx::instance object if one has already been created
Aborted (core dumped)
因此,我将尝试在此应用程序中定义一个 MongoDB 实例。
现在我担心我的另一个应用程序 - 它是 Python 中的顶级程序,它加载了许多动态库,用 C++ 编写并拥有自己的 MongoDB 实例。我应该在哪里定义 MongoDB 实例 - 在顶级代码中,在每个库中,在其中一个库中?
最佳答案
您应该创建一个共享库来管理 mongocxx::instance
的单例实例,并让所有其他需要使用该驱动程序的库通过一些通用 API 访问该单例。请参阅instance
management example .
关于python - MongoDB Python 和 C++ 客户端 - 多个实例出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50914898/