Pool::activate
(PHP 8.6+, True Async 1.0)
public Pool::activate(): void
풀을 강제로 ACTIVE 상태로 전환합니다. 리소스를 다시 획득할 수
있게 됩니다. 수동 서킷 브레이커 관리에 사용되며, 예를 들어
서비스가 복구되었음을 확인한 후에 사용합니다.
매개변수
이 메서드는 매개변수를 받지 않습니다.
반환값
값을 반환하지 않습니다.
예제
예제 #1 확인 후 수동 활성화
<?php
use Async\Pool;
use Async\CircuitBreakerState;
$pool = new Pool(
factory: fn() => new HttpClient('https://api.example.com'),
max: 5
);
// 풀이 비활성화되었다고 가정
if ($pool->getState() === CircuitBreakerState::INACTIVE) {
// 서비스 가용성 수동 확인
if (checkServiceHealth('https://api.example.com/health')) {
$pool->activate();
echo "Pool activated\n";
}
}
예제 #2 외부 신호에 의한 활성화
<?php
use Async\Pool;
// 모니터링 시스템의 웹훅 핸들러
function onServiceRestored(Pool $pool): void
{
$pool->activate();
echo "Service restored, pool activated\n";
}
같이 보기
- Pool::deactivate — INACTIVE 상태로 전환
- Pool::recover — RECOVERING 상태로 전환
- Pool::getState — 현재 상태