/// Socket para escuchar conexiones.
sockinetbuf socket;
+ /// Mutex para las conexiones.
+ Glib::Mutex connections_mutex;
+
/// Conexiones de control.
ConnectionList connections;
std::cerr << __FILE__ << ": on_connection_finished(connection = "
<< connection << ")" << std::endl;
#endif // DEBUG
- mutex.lock();
+ connections_mutex.lock();
+ // FIXME pruebo el mutex.
+ sleep(5);
connections.remove(connection);
#ifdef DEBUG
std::cerr << __FILE__ << ": lista de conexiones" << std::endl;
std::cerr << "\t " << *i << std::endl;
}
#endif // DEBUG
- mutex.unlock();
+ connections_mutex.unlock();
}
/// \todo TODO: ver tema de timeout o como salir de un accept().
std::cerr << __FILE__ << ": real_run(): connection = " << connection
<< std::endl;
#endif // DEBUG
- mutex.lock();
+ connections_mutex.lock();
+ // FIXME pruebo el mutex.
+ sleep(5);
connections.push_back(connection);
#ifdef DEBUG
std::cerr << __FILE__ << ": real_run(): lista de conexiones" << std::endl;
std::cerr << "\t " << *i << std::endl;
}
#endif // DEBUG
- mutex.unlock();
+ connections_mutex.unlock();
// Conecto la señal para cuando termina una conexión, borrarla.
connection->signal_finished().connect(
SigC::bind<Connection*>(