2012-01-26 6 views
2

これは本当にシンプルでなければならないと思いますが、私はその点を忘れていますが、C++ドライバとDBClientConnectionを使用してMongoからどのように切断しますか? DBClientには、「接続」のパブリックメンバーがありますが、私が見つけることのできる切断/強制終了などはありません。mongoDbとC++ドライバの接続を切断する

ScopedDBConnectionを使用すると、スタックオーバーフローやWeb上で接続が切断される可能性があるようですが、使用方法の例はほとんどありません。そのクラスをDBClientConnectionクラスで使用する必要があります。

アイデア?

答えて

2

DBClientConnectionを使用している場合は、1つの接続があり、切断または再接続する必要はありません。私はデストラクタを呼び出すときに接続を終了すると思います。自動的に再接続するように設定すると、接続が失われても使用できるようになります。

接続プーリングと複数の接続を使用する場合は、ScopedDBConnectionを使用します。

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

基本的に、あなたはDBClientConnectionで行うことができますconnで何かを行うことができますが、設定が完了したら、あなたはdone()を呼び出す:https://github.com/mongodb/mongo/blob/master/src/mongo/client/model.cpp

はここに要点です:あなたはここにいくつかの例を見ることができます。

関連する問題