File: pcntl-fork.xml

package info (click to toggle)
phpdoc 20050512-1
  • links: PTS
  • area: non-free
  • in suites: sarge
  • size: 36,592 kB
  • ctags: 1,501
  • sloc: xml: 376,768; php: 6,708; cpp: 500; makefile: 293; perl: 161; sh: 151; awk: 28
file content (74 lines) | stat: -rw-r--r-- 2,007 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.5 $ -->
<!-- splitted from ./en/functions/pcntl.xml, last change in rev 1.1 -->
 <refentry id="function.pcntl-fork">
  <refnamediv>
   <refname>pcntl_fork</refname>
   <refpurpose>Forks the currently running process</refpurpose>
  </refnamediv>
  <refsect1>
   <title>Description</title>
    <methodsynopsis>
     <type>int</type><methodname>pcntl_fork</methodname>
     <void/>
    </methodsynopsis>
   <para>
    The <function>pcntl_fork</function> function creates a child
    process that differs from the parent process only in its PID and
    PPID. Please see your system's fork(2) man page for specific details as to
    how fork works on your system.
   </para>
   <para>
    On success, the PID of the child process is returned in the
    parent's thread of execution, and a 0 is returned in the child's
    thread of execution.  On failure, a -1 will be returned in the
    parent's context, no child process will be created, and a PHP
    error is raised.
   </para>
   <example>
    <title><function>pcntl_fork</function> example</title>
    <programlisting role="php">
<![CDATA[
<?php

$pid = pcntl_fork();
if ($pid == -1) {
     die('could not fork');
} else if ($pid) {
     // we are the parent
     pcntl_wait($status); //Protect against Zombie children
} else {
     // we are the child
}

?>
]]>
    </programlisting>
   </example>
   <para>
    See also <function>pcntl_waitpid</function> and
    <function>pcntl_signal</function>.
   </para>
  </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:"../../../../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
-->