38 lines
		
	
	
		
			627 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			627 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
/**
 | 
						|
 * Created by PhpStorm.
 | 
						|
 * User: Jenner
 | 
						|
 * Date: 2015/8/12
 | 
						|
 * Time: 17:54
 | 
						|
 */
 | 
						|
 | 
						|
namespace Jenner\SimpleFork;
 | 
						|
 | 
						|
 | 
						|
/**
 | 
						|
 * pool
 | 
						|
 *
 | 
						|
 * @package Jenner\SimpleFork
 | 
						|
 */
 | 
						|
class Pool extends AbstractPool
 | 
						|
{
 | 
						|
 | 
						|
    /**
 | 
						|
     * add a process
 | 
						|
     *
 | 
						|
     * @param Process $process
 | 
						|
     * @param null|string $name process name
 | 
						|
     * @return int
 | 
						|
     */
 | 
						|
    public function execute(Process $process, $name = null)
 | 
						|
    {
 | 
						|
        if (!is_null($name)) {
 | 
						|
            $process->name($name);
 | 
						|
        }
 | 
						|
        if (!$process->isStarted()) {
 | 
						|
            $process->start();
 | 
						|
        }
 | 
						|
 | 
						|
        return array_push($this->processes, $process);
 | 
						|
    }
 | 
						|
} |