1
0
mirror of https://github.com/php/doc-fr.git synced 2026-03-24 07:02:06 +01:00
Files
archived-doc-fr/reference/ev/evchild/construct.xml
2026-03-02 14:35:06 +01:00

163 lines
4.9 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: b4fbf4434abeca44c58575ff3967e5640f7877d5 Maintainer: yannick Status: ready -->
<!-- Reviewed: no -->
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="evchild.construct">
<refnamediv>
<refname>EvChild::__construct</refname>
<refpurpose>Construit l'objet d'observation EvChild</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<constructorsynopsis>
<modifier>public</modifier>
<methodname>EvChild::__construct</methodname>
<methodparam>
<type>int</type>
<parameter>pid</parameter>
</methodparam>
<methodparam>
<type>bool</type>
<parameter>trace</parameter>
</methodparam>
<methodparam>
<type>callable</type>
<parameter>callback</parameter>
</methodparam>
<methodparam choice="opt">
<type>mixed</type>
<parameter>data</parameter>
<initializer>&null;</initializer>
</methodparam>
<methodparam choice="opt">
<type>int</type>
<parameter>priority</parameter>
<initializer>0</initializer>
</methodparam>
</constructorsynopsis>
<simpara>
Construit l'objet d'observateur <classname>EvChild</classname>.
</simpara>
<simpara>
Appelle la fonction de rappel lorsqu'une modification de statut d'un processus
dont l'ID <parameter>pid</parameter> (ou de tout <emphasis>PID</emphasis>
s'il vaut <literal>0</literal>) a été reçue (une modification de statut
survient lorsque le processus se termine ou est tué, ou lorsque le
paramètre <parameter>trace</parameter> vaut &true;, lorsque le processus
est stoppé ou continué). En d'autres termes, lorsque le processus
reçoit un <constant>SIGCHLD</constant>, <emphasis>Ev</emphasis>
va récupérer tous les status de sortie/d'attente pour tous les fils
modifiés/zombies et va appeler la fonction de rappel.
</simpara>
<simpara>
Il est valide d'installer un observateur sur le fils après qu'un
<classname>EvChild</classname> ne soit sorti, mais avant que la boucle
d'événement n'ait démarré sa prochaine itération. Par exemple,
d'abord, appelez <literal>fork</literal>, puis le nouveau processus
fils peut sortir, et uniquement là, un observateur
<classname>EvChild</classname> est installé sur le parent pour le
nouveau <emphasis>PID</emphasis>.
</simpara>
<simpara>
Il sera possible d'accéder aux statuts de sortie/de traçage ainsi qu'aux
<parameter>pid</parameter> en utilisant les propriétés
<varname>rstatus</varname> et <varname>rpid</varname> de l'objet d'observation.
</simpara>
<simpara>
Le nombre d'observateurs <emphasis>PID</emphasis> par <emphasis>PID</emphasis>
n'est pas limité. Ils seront tous appelés.
</simpara>
<simpara>
La méthode <methodname>EvChild::createStopped</methodname>
ne démarre (active) pas le nouvel observateur créé.
</simpara>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term>
<parameter>pid</parameter>
</term>
<listitem>
<simpara>
Attend les modifications de statut des processus PID (ou tout processus
si PID vaut <literal>0</literal>).
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<parameter>trace</parameter>
</term>
<listitem>
<simpara>
Si vaut &false;, n'active l'observateur que lorsque le processus
se termine. Sinon (&true;), active l'observateur lorsque le
processus est stoppé ou continué.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<parameter>callback</parameter>
</term>
<listitem>
<simpara>
Voir les
<link linkend="ev.watcher-callbacks">fonctions de rappel des observateurs</link>.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<parameter>data</parameter>
</term>
<listitem>
<simpara>
Données personnalisées associées avec l'observateur.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<parameter>priority</parameter>
</term>
<listitem>
<simpara>
<link linkend="ev.constants.watcher-pri">Fonctions de rappel de l'observateur</link>
</simpara>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member>
<methodname>EvLoop::child</methodname>
</member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->