EvChild::__construct
EvChild ウォッチャーオブジェクトを作る
説明
public
EvChild::__construct(
int
$pid
,
bool
$trace
,
callable
$callback
,
mixed
$data
= null
,
int
$priority
= 0
)
プロセス ID pid
(pid is 0 の場合は任意の PID)
の状態の変更を受信したときに、コールバックを呼びます
(状態が変わるのは、プロセスが停止したり強制終了させられたり、
trace が true になったり、さらにプロセスを一時停止したり再開したりしたときです)。
言い換えると、あるプロセスが SIGCHLD を受信したときに、
Ev はすべての変更された子プロセスやゾンビ子プロセスの exit/wait
状態を取得してコールバックを呼びます。
EvChild が終了してから child ウォッチャーをインストールしてもかまいませんが、
イベントループが次のイテレーションを始める前でないといけません。
たとえば、最初のプロセスが fork した後で新しい子プロセスが終了するかもしれません。
そのときは、新しい PID の親にだけ
EvChild ウォッチャーをインストールできます。
exit/tracing ステータスや pid にアクセスするには、
ウォッチャーオブジェクトのプロパティ rstatus および rpid
を使います。
一つの PID に対する PID
ウォッチャーの数は無制限で、すべてが呼び出されます。
EvChild::createStopped
メソッドは、新しく作ったウォッチャーを開始させません。
パラメータ
-
pid
-
状態の変更を待つプロセスの PID (0 にすると、すべてのプロセスを対象にします)。
-
trace
-
false にすると、プロセスが終了したときにだけウォッチャーをアクティブにします。
true の場合は、プロセスが一時停止したり再開したりしたときにもウォッチャーをアクティブにします。
-
callback
-
ウォッチャーのコールバック
を参照ください。
-
data
-
このウォッチャーに関連づけるカスタムデータ。
-
priority
-
ウォッチャーの優先度。