<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML ><HEAD ><TITLE >pcntl_fork</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK REL="HOME" TITLE="PHP 手册" HREF="index.html"><LINK REL="UP" TITLE="Process Control Functions" HREF="ref.pcntl.html"><LINK REL="PREVIOUS" TITLE="pcntl_exec" HREF="function.pcntl-exec.html"><LINK REL="NEXT" TITLE="pcntl_getpriority" HREF="function.pcntl-getpriority.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=UTF-8"></HEAD ><BODY CLASS="refentry" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >PHP 手册</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="function.pcntl-exec.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="function.pcntl-getpriority.html" ACCESSKEY="N" >下一页</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="function.pcntl-fork" ></A >pcntl_fork</H1 ><DIV CLASS="refnamediv" ><A NAME="AEN169906" ></A ><P > (PHP 4 >= 4.1.0, PHP 5)</P >pcntl_fork -- Forks the currently running process</DIV ><DIV CLASS="refsect1" ><A NAME="AEN169909" ></A ><H2 >说明</H2 >int <B CLASS="methodname" >pcntl_fork</B > ( void )<BR ></BR ><P > The <B CLASS="function" >pcntl_fork()</B > 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. </P ></DIV ><DIV CLASS="refsect1" ><A NAME="AEN169917" ></A ><H2 >返回值</H2 ><P > 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. </P ></DIV ><DIV CLASS="refsect1" ><A NAME="AEN169920" ></A ><H2 >范例</H2 ><P > <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN169923" ></A ><P ><B >例 1. <B CLASS="function" >pcntl_fork()</B > example</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> <font color="#0000BB"><?php<br /><br />$pid </font><font color="#007700">= </font><font color="#0000BB">pcntl_fork</font><font color="#007700">();<br />if (</font><font color="#0000BB">$pid </font><font color="#007700">== -</font><font color="#0000BB">1</font><font color="#007700">) {<br /> die(</font><font color="#DD0000">'could not fork'</font><font color="#007700">);<br />} else if (</font><font color="#0000BB">$pid</font><font color="#007700">) {<br /> </font><font color="#FF8000">// we are the parent<br /> </font><font color="#0000BB">pcntl_wait</font><font color="#007700">(</font><font color="#0000BB">$status</font><font color="#007700">); </font><font color="#FF8000">//Protect against Zombie children<br /></font><font color="#007700">} else {<br /> </font><font color="#FF8000">// we are the child<br /></font><font color="#007700">}<br /><br /></font><font color="#0000BB">?></font> </font> </code></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > </P ></DIV ><DIV CLASS="refsect1" ><A NAME="AEN169927" ></A ><H2 >参见</H2 ><P > <P ></P ><TABLE BORDER="0" ><TBODY ><TR ><TD ><A HREF="function.pcntl-waitpid.html" ><B CLASS="function" >pcntl_waitpid()</B ></A ></TD ></TR ><TR ><TD ><A HREF="function.pcntl-signal.html" ><B CLASS="function" >pcntl_signal()</B ></A ></TD ></TR ></TBODY ></TABLE ><P ></P > </P ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="function.pcntl-exec.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >起始页</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="function.pcntl-getpriority.html" ACCESSKEY="N" >下一页</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >pcntl_exec</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="ref.pcntl.html" ACCESSKEY="U" >上一级</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >pcntl_getpriority</TD ></TR ></TABLE ></DIV ></BODY ></HTML >