Pool::activate
(PHP 8.6+, True Async 1.0)
public Pool::activate(): void
Примусово переводить пул у стан ACTIVE. Ресурси знову стають доступними для отримання. Використовується для ручного керування Circuit Breaker, наприклад, після підтвердження відновлення роботи сервісу.
Параметри
Цей метод не приймає параметрів.
Значення, що повертається
Значення не повертається.
Приклади
Приклад #1 Ручна активація після перевірки
<?php
use Async\Pool;
use Async\CircuitBreakerState;
$pool = new Pool(
factory: fn() => new HttpClient('https://api.example.com'),
max: 5
);
// Suppose the pool was deactivated
if ($pool->getState() === CircuitBreakerState::INACTIVE) {
// Manually check service availability
if (checkServiceHealth('https://api.example.com/health')) {
$pool->activate();
echo "Pool activated\n";
}
}
Приклад #2 Активація за зовнішнім сигналом
<?php
use Async\Pool;
// Webhook handler from the monitoring system
function onServiceRestored(Pool $pool): void
{
$pool->activate();
echo "Service restored, pool activated\n";
}
Дивіться також
- Pool::deactivate — Перехід у стан INACTIVE
- Pool::recover — Перехід у стан RECOVERING
- Pool::getState — Поточний стан