Como te comento nuevamente, no me estas entendiendo tu puedes realizar todo dentro del mismo try para evitar eso precisamente, por ejemplo:
Código PHP:
Ver originaltry {
//Cargo los datos del fichero .ini
$config_slave = new Config('params_slave.ini');
$config_master = new Config('params_master.ini');
 
//Creo el objeto de la base de datos
$db_slave = new MyPDO($config_slave);
$db_slave->setAttribute(MyPDO::ATTR_ERRMODE, MyPDO::ERRMODE_EXCEPTION);
$db_master = new MyPDO($config_master);
$db_master->setAttribute(MyPDO::ATTR_ERRMODE, MyPDO::ERRMODE_EXCEPTION);
 
//Guardo las instancias diferentes con Registry
Registry::save('db_slave', $db_slave);
Registry::save('db_master', $db_master);
 
//Recupero las instancias con Registry
$db_slave=Registry::get('db_slave');
$db_master=Registry::get('db_master');
 
// Creo el primer objeto el cual hace una conexion con la BBDD slave
$cat= new Categoria($db_slave);
$cat->listarCategorias();
$cat->listarCategorias();
 
// Creo el segundo objeto el cual hace una conexion con la BBDD master
$par= new Partidos($db_master);
$par->listarPartidos();
 
// Cuenta el total de consultas que hubieron en cada BBDD
echo "Consultas realizadas en BD Slave: ".$db_slave->getQueryCount()."<br/>";
echo "Consultas realizadas en BD Master: ".$db_master->getQueryCount()."<br/>";
} catch (Exception $e) {
echo "Ocurrio un error";
}
Saludos.