Pool::activate
(PHP 8.6+, True Async 1.0)
php
public Pool::activate(): voidTransiciona forzosamente el pool al estado ACTIVE. Los recursos vuelven a estar disponibles para su adquisición. Se utiliza para la gestión manual del Circuit Breaker, por ejemplo, después de confirmar que el servicio se ha recuperado.
Parámetros
Este método no acepta parámetros.
Valor de retorno
No se devuelve ningún valor.
Ejemplos
Ejemplo #1 Activación manual tras verificación
php
<?php
use Async\Pool;
use Async\CircuitBreakerState;
$pool = new Pool(
factory: fn() => new HttpClient('https://api.example.com'),
max: 5
);
// Supongamos que el pool fue desactivado
if ($pool->getState() === CircuitBreakerState::INACTIVE) {
// Verificar manualmente la disponibilidad del servicio
if (checkServiceHealth('https://api.example.com/health')) {
$pool->activate();
echo "Pool activado\n";
}
}Ejemplo #2 Activación por señal externa
php
<?php
use Async\Pool;
// Manejador de webhook del sistema de monitoreo
function onServiceRestored(Pool $pool): void
{
$pool->activate();
echo "Servicio restaurado, pool activado\n";
}Ver también
- Pool::deactivate — Transición al estado INACTIVE
- Pool::recover — Transición al estado RECOVERING
- Pool::getState — Estado actual