2012-01-26 33 views
2

我敢肯定,这一定是非常简单的或我错过了点,但你如何从蒙戈使用C++驱动程序和DBClientConnection断开? dbclient中有“连接”,但没有断开/杀/下降等我能找到的公共成员。从MongoDB的断开与C++司机

有一些使用ScopedDBConnection(在堆栈溢出和在网络上),似乎能够让我放弃我的连接 - 但有几个例子将如何使用 - 或信息当我应该通过DBClientConnection类使用该类时。

任何想法?

回答

2

如果您使用的是DBClientConnection,它有一个连接,您不应该断开/重新连接。我想它会在调用析构函数时终止连接。你可以将它设置为自动重新连接,这样可以保持如果它失去它的连接使用。

如果你想拥有连接池和多个连接,要使用ScopedDBConnection。你可以在这里看到一些例子:https://github.com/mongodb/mongo/blob/master/src/mongo/client/model.cpp

这里的要点是:

ScopedDbConnection conn("localhost"); 
mongo::BSONObjBuilder obj; 
obj.append("name" , "asd"); 
conn->insert("test.test", obj); 
conn.done(); 

基本上,你可以做任何事情conn,你可以用DBClientConnection做,但是当你做你打电话done()