unique_ptr<rpcc> client;
bool valid = true;
string destination;
- mutex client_mutex;
+ std::mutex client_mutex;
hinfo(const string & destination_) : destination(destination_) {}
};
-static mutex mgr_mutex;
-static map<string, shared_ptr<hinfo>> hmap;
+static std::mutex mgr_mutex;
+static std::map<string, shared_ptr<hinfo>> hmap;
handle::handle(const string & destination) : destination_(destination) {
lock ml(mgr_mutex);
h = hmap[destination];
if (!h || !h->valid)
- h = (hmap[destination] = make_shared<hinfo>(destination));
+ h = (hmap[destination] = std::make_shared<hinfo>(destination));
}
rpcc * handle::safebind() {
return nullptr;
if (!h->client) {
unique_ptr<rpcc> client(new rpcc(h->destination));
- LOG("bind(\"" << h->destination << "\")");
+ LOG << "bind(\"" << h->destination << "\")";
int ret = client->bind(milliseconds(1000));
if (ret < 0) {
- LOG("bind failure! " << h->destination << " " << ret);
+ LOG << "bind failure! " << h->destination << " " << ret;
h->valid = false;
} else {
- LOG("bind succeeded " << h->destination);
- h->client = move(client);
+ LOG << "bind succeeded " << h->destination;
+ h->client = std::move(client);
}
}
return h->client.get();
lock ml(mgr_mutex);
if (hmap.find(destination_) != hmap.end()) {
hmap[destination_]->valid = false;
- LOG_NONMEMBER("cl " << destination_ << " refcnt " << hmap[destination_].use_count());
+ LOG << "cl " << destination_ << " refcnt " << hmap[destination_].use_count();
hmap.erase(destination_);
}
}