fixes some concurrency bugs

This commit is contained in:
Peter Thorson
2012-03-11 13:19:53 -05:00
parent a76e662192
commit cfc491ffce
2 changed files with 28 additions and 3 deletions

View File

@@ -93,9 +93,10 @@ struct request {
class request_coordinator {
public:
void add_request(const request& r) {
boost::unique_lock<boost::mutex> lock(m_lock);
m_requests.push(r);
lock.unlock();
{
boost::unique_lock<boost::mutex> lock(m_lock);
m_requests.push(r);
}
m_cond.notify_one();
}
@@ -163,6 +164,10 @@ public:
void on_fail(connection_ptr con) {
std::cout << "A command connection failed." << std::endl;
}
void on_close(connection_ptr con) {
std::cout << "A command connection closed." << std::endl;
}
private:
request_coordinator& m_coordinator;
std::string m_ident;