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(또는 pid0인 경우 임의의 PID)에 대한 상태 변경이 수신되면 콜백을 호출합니다(프로세스가 종료되거나 종료될 때 상태 변경이 발생하거나, tracetrue인 경우 추가로 중지 또는 계속될 때 발생합니다. ). 즉, 프로세스가 SIGCHLD를 수신하면 Ev는 모든 변경된/좀비 자식에 대한 미해결 종료/대기 상태를 가져오고 콜백을 호출합니다.

EvChild가 종료된 후 이벤트 루프가 다음 반복을 시작하기 전에 자식 감시자를 설치하는 것이 유효합니다. 예를 들어, 먼저 fork 를 호출한 다음 새 자식 프로세스가 종료될 수 있으며 그 다음에야 새 PID에 대한 부모에 EvChild 감시자가 설치됩니다.

watcher 개체의 rstatusrpid 속성을 사용하여 종료/추적 상태와 pid에 모두 액세스할 수 있습니다.

PID당 PID 감시자의 수는 무제한입니다. 모두 불릴 것입니다.

EvChild::createStopped() 메서드는 새로 생성된 감시자를 시작(활성화)하지 않습니다.


매개변수

pid
프로세스 PID(또는 PID가 0으로 지정된 경우 모든 프로세스)의 상태 변경을 기다립니다.
trace
false인 경우 프로세스가 종료될 때만 감시자를 활성화합니다. 그렇지 않으면(true) 프로세스가 중지되거나 계속될 때 감시자를 추가로 활성화합니다.
callback
Watcher 콜백을 참조하십시오.
data
감시자와 연결된 사용자 지정 데이터입니다.
priority
Watcher 우선 순위

기타

  • EvLoop::child() - 현재 이벤트 루프와 연결된 EvChild 개체를 만듭니다.