<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
 
<book xml:id="book.pcntl" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
 <?phpdoc extension-membership="bundled" ?>
 <title>Process Control</title>
 <titleabbrev>PCNTL</titleabbrev>
 
 <!-- {{{ preface -->
 <preface xml:id="intro.pcntl">
  &reftitle.intro;
  <para>
   Process Control support in PHP implements the Unix style of
   process creation, program execution, signal handling and process
   termination. Process Control should not be enabled within a
   web server environment and unexpected results may happen if any
   Process Control functions are used within a web server environment.
  </para>
  <para>
   This documentation is intended to explain the general usage of
   each of the Process Control functions. For detailed information
   about Unix process control you are encouraged to consult your
   systems documentation including fork(2), waitpid(2) and signal(2)
   or a comprehensive reference such as Advanced Programming in the
   UNIX Environment by W. Richard Stevens (Addison-Wesley).
  </para>
  <para>
   PCNTL now uses ticks as the signal handle callback mechanism, which is
   much faster than the previous mechanism. This change follows the same
   semantics as using "user ticks". You use the <function>declare</function> 
   statement to specify the locations in your program where callbacks are
   allowed to occur. This allows you to minimize the overhead of handling
   asynchronous events. In the past, compiling PHP with pcntl enabled would
   always incur this overhead, whether or not your script actually used
   pcntl.
  </para>

  &note.no-windows.extension;
 </preface>
 <!-- }}} -->
 
 &reference.pcntl.setup;
 &reference.pcntl.constants;
 &reference.pcntl.examples;
 &reference.pcntl.reference;

</book>

<!-- 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
-->

