<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/book.pthreads.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ja',
  ),
  'this' => 
  array (
    0 => 'class.pool.php',
    1 => 'Pool',
    2 => 'The Pool class',
  ),
  'up' => 
  array (
    0 => 'book.pthreads.php',
    1 => 'pthreads',
  ),
  'prev' => 
  array (
    0 => 'collectable.isgarbage.php',
    1 => 'Collectable::isGarbage',
  ),
  'next' => 
  array (
    0 => 'pool.collect.php',
    1 => 'Pool::collect',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'en',
    'path' => 'reference/pthreads/pool.xml',
  ),
  'history' => 
  array (
  ),
  'extra_header_links' => 
  array (
    'rel' => 'alternate',
    'href' => '/manual/en/feeds/class.pool.atom',
    'type' => 'application/atom+xml',
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="class.pool" class="reference">

 <h1 class="title">The Pool class</h1>
 

 <div class="partintro"><p class="verinfo">(PECL pthreads &gt;= 2.0.0)</p>


  <div class="section" id="pool.intro">
   <h2 class="title">はじめに</h2>
   <p class="simpara">
   A Pool is a container for, and controller of, an adjustable number of Workers.
   </p>
   <p class="simpara">
   Pooling provides a higher level abstraction of the Worker functionality, including the management of references in the way required by pthreads.
   </p>
  </div>


  <div class="section" id="pool.synopsis">
   <h2 class="title">クラス概要</h2>


   <div class="classsynopsis">
    <span class="ooclass"><strong class="classname"></strong></span>


    <div class="classsynopsisinfo">
     <span class="ooclass">
      <span class="modifier">class</span> <strong class="classname">Pool</strong>
     </span>
     {</div>

    <div class="classsynopsisinfo classsynopsisinfo_comment">/* プロパティ */</div>
    <div class="fieldsynopsis">
     <span class="modifier">protected</span>
      <var class="varname"><a href="class.pool.php#pool.props.size">$<var class="varname">size</var></a></var>;</div>

    <div class="fieldsynopsis"><span class="modifier">protected</span>
      <var class="varname"><a href="class.pool.php#pool.props.class">$<var class="varname">class</var></a></var>;</div>

    <div class="fieldsynopsis"><span class="modifier">protected</span>
      <var class="varname"><a href="class.pool.php#pool.props.workers">$<var class="varname">workers</var></a></var>;</div>

    <div class="fieldsynopsis"><span class="modifier">protected</span>
      <var class="varname"><a href="class.pool.php#pool.props.ctor">$<var class="varname">ctor</var></a></var>;</div>

    <div class="fieldsynopsis"><span class="modifier">protected</span>
      <var class="varname"><a href="class.pool.php#pool.props.last">$<var class="varname">last</var></a></var>;</div>


    <div class="classsynopsisinfo classsynopsisinfo_comment">/* メソッド */</div>
    <div class="constructorsynopsis dc-description">
   <span class="modifier">public</span> <span class="methodname"><a href="pool.construct.php" class="methodname">__construct</a></span>(<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$size</code></span>, <span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$class</code><span class="initializer"> = ?</span></span>, <span class="methodparam"><span class="type"><a href="language.types.array.php" class="type array">array</a></span> <code class="parameter">$ctor</code><span class="initializer"> = ?</span></span>)</div>

    <div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="pool.collect.php" class="methodname">collect</a></span>(<span class="methodparam"><span class="type"><a href="language.types.callable.php" class="type Callable">Callable</a></span> <code class="parameter">$collector</code><span class="initializer"> = ?</span></span>): <span class="type"><a href="language.types.integer.php" class="type int">int</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="pool.resize.php" class="methodname">resize</a></span>(<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$size</code></span>): <span class="type"><a href="language.types.void.php" class="type void">void</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="pool.shutdown.php" class="methodname">shutdown</a></span>(): <span class="type"><a href="language.types.void.php" class="type void">void</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="pool.submit.php" class="methodname">submit</a></span>(<span class="methodparam"><span class="type"><a href="class.threaded.php" class="type Threaded">Threaded</a></span> <code class="parameter">$task</code></span>): <span class="type"><a href="language.types.integer.php" class="type int">int</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="pool.submitTo.php" class="methodname">submitTo</a></span>(<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$worker</code></span>, <span class="methodparam"><span class="type"><a href="class.threaded.php" class="type Threaded">Threaded</a></span> <code class="parameter">$task</code></span>): <span class="type"><a href="language.types.integer.php" class="type int">int</a></span></div>

   }</div>


  </div>



  <div class="section" id="pool.props">
   <h2 class="title">プロパティ</h2>
   <dl>
    
     <dt id="pool.props.size"><var class="varname">size</var></dt>
     <dd>
      <span class="simpara">maximum number of Workers this Pool can use</span>
     </dd>
    
    
     <dt id="pool.props.class"><var class="varname">class</var></dt>
     <dd>
      <span class="simpara">the class of the Worker</span>
     </dd>
    
    
     <dt id="pool.props.workers"><var class="varname">workers</var></dt>
     <dd>
      <span class="simpara">references to Workers</span>
     </dd>
    
    
     <dt id="pool.props.ctor"><var class="varname">ctor</var></dt>
     <dd>
      <span class="simpara">the arguments for constructor of new Workers</span>
     </dd>
    
    
     <dt id="pool.props.last"><var class="varname">last</var></dt>
     <dd>
      <span class="simpara">offset in workers of the last Worker used</span>
     </dd>
    
   </dl>
  </div>



 </div>

 






























<h2>目次</h2><ul class="chunklist chunklist_reference"><li><a href="pool.collect.php">Pool::collect</a> — Collect references to completed tasks</li><li><a href="pool.construct.php">Pool::__construct</a> — Creates a new Pool of Workers</li><li><a href="pool.resize.php">Pool::resize</a> — Resize the Pool</li><li><a href="pool.shutdown.php">Pool::shutdown</a> — Shutdown all workers</li><li><a href="pool.submit.php">Pool::submit</a> — Submits an object for execution</li><li><a href="pool.submitTo.php">Pool::submitTo</a> — Submits a task to a specific worker for execution</li></ul>
</div>
<?php manual_footer($setup); ?>