ネットワーク通信にThriftを使用する小さなコードスニペットがあります。boost :: shared_ptr <TTransport>接続が一旦破壊されましたか?
int main() {
while (true) {
boost::shared_ptr<TTransport> socket(new TSocket("localhost", 9090));
boost::shared_ptr<TTransport> transport(new TBufferedTransport(socket));
boost::shared_ptr<TProtocol> protocol(new TBinaryProtocol(transport));
CalculatorClient client(protocol);
try {
transport->open();
client.ping();
cout << "ping()" << endl;
// following line is commented out intentionally
//transport->close();
} catch (TException& tx) {
cout << "ERROR: " << tx.what() << endl;
}
}
}
私の質問です:boost :: shared_ptr close connectionは一度破壊されますか?はいの場合、transport->close();
は何の問題もなくコメントアウトすることができます。
ええ、私はちょうどソースコードを見て、同じものを見つけました。ありがとう! –