Ev EvChild::__construct
(PECL ev >= 0.2.0)
EvChild::__construct — EvChild 감시자 객체를 생성합니다.
설명
public EvChild::__construct( int $pid , bool $trace , callable $callback , mixed $data = null , int $priority = 0 )
EvChild 감시자 개체를 생성합니다.
프로세스 ID pid
(또는 pid
가 0
인 경우 임의의 PID)에 대한 상태 변경이 수신되면 콜백을 호출합니다(프로세스가 종료되거나 종료될 때 상태 변경이 발생하거나, trace
이 true
인 경우 추가로 중지 또는 계속될 때 발생합니다. ). 즉, 프로세스가 SIGCHLD
를 수신하면 Ev는 모든 변경된/좀비 자식에 대한 미해결 종료/대기 상태를 가져오고 콜백을 호출합니다.
EvChild가 종료된 후 이벤트 루프가 다음 반복을 시작하기 전에 자식 감시자를 설치하는 것이 유효합니다. 예를 들어, 먼저 fork 를 호출한 다음 새 자식 프로세스가 종료될 수 있으며 그 다음에야 새 PID에 대한 부모에 EvChild 감시자가 설치됩니다.
watcher 개체의 rstatus 및 rpid 속성을 사용하여 종료/추적 상태와 pid
에 모두 액세스할 수 있습니다.
PID당 PID 감시자의 수는 무제한입니다. 모두 불릴 것입니다.
EvChild::createStopped() 메서드는 새로 생성된 감시자를 시작(활성화)하지 않습니다.
매개변수
pid
- 프로세스 PID(또는 PID가
0
으로 지정된 경우 모든 프로세스)의 상태 변경을 기다립니다. trace
false
인 경우 프로세스가 종료될 때만 감시자를 활성화합니다. 그렇지 않으면(true
) 프로세스가 중지되거나 계속될 때 감시자를 추가로 활성화합니다.callback
- Watcher 콜백을 참조하십시오.
data
- 감시자와 연결된 사용자 지정 데이터입니다.
priority
- Watcher 우선 순위
기타
- EvLoop::child() - 현재 이벤트 루프와 연결된 EvChild 개체를 만듭니다.