The EvChild class

From Get docs
Php/docs/latest/class.evchild


The EvChild class

Introduction

(PECL ev >= 0.2.0)

EvChild watchers trigger when the process receives a SIGCHLD in response to some child status changes (most typically when a child dies or exits). It is permissible to install an EvChild watcher after the child has been forked(which implies it might have already exited), as long as the event loop isn't entered(or is continued from a watcher), i.e. forking and then immediately registering a watcher for the child is fine, but forking and registering a watcher a few event loop iterations later or in the next callback invocation is not.

It is allowed to register EvChild watchers in the default loop only.

Class synopsis

class EvChild extends EvWatcher {

/* Properties */

public $pid;

public $rpid;

public $rstatus;

/* Inherited properties */

public $is_active;

public $data;

public $is_pending;

public $priority;

/* Methods */

public __construct(
  int $pid ,
  bool $trace ,
  callable $callback ,
  mixed $data  = null ,
  int $priority  = 0 
)
final public static createStopped(
  int $pid ,
  bool $trace ,
  callable $callback ,
  mixed $data  = ?,
  int $priority  = ?
): object
public set( int $pid ,  bool $trace ): void

/* Inherited methods */

public EvWatcher::clear(): int
abstract public EvWatcher::__construct()
public EvWatcher::feed( int $revents ): void
public EvWatcher::getLoop(): EvLoop
public EvWatcher::invoke( int $revents ): void
public EvWatcher::keepalive( bool $value  = ?): bool
public EvWatcher::setCallback( callable $callback ): void
public EvWatcher::start(): void
public EvWatcher::stop(): void

}

Properties

pid
Readonly . The process ID this watcher watches out for, or 0 , meaning any process ID.
rpid
Readonly .The process ID that detected a status change.
rstatus
Readonly . The process exit status caused by rpid .

Table of Contents


© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/class.evchild.php