Pool::__construct

(PECL pthreads >= 2.0.0)

Pool::__constructСоздаёт новый пул воркеров

Описание

public Pool::__construct(int $size, string $class = ?, array $ctor = ?): Pool

Создаёт новый пул рабочих. Пулы лениво создают свои потоки, что означает, что новые потоки будут создаваться только тогда, когда они необходимы для выполнения заданий.

Список параметров

size

Максимальное количество воркеров, которое может создать этот пул

class

Класс для новых воркеров. Если класс не указан, то по умолчанию используется класс Worker.

ctor

Массив аргументов для передачи конструкторам новых воркерам.

Возвращаемые значения

Возвращает новый пул

Примеры

Пример #1 Создание пулов

<?php
class MyWorker extends Worker {

    public function 
__construct(Something $something) {
        
$this->something $something;
    }

    public function 
run() {
        
/** ... **/
    
}
}

$pool = new Pool(8, \MyWorker::class, [new Something()]);

var_dump($pool);
?>

Результат выполнения данного примера:

object(Pool)#1 (6) {
  ["size":protected]=>
  int(8)
  ["class":protected]=>
  string(8) "MyWorker"
  ["workers":protected]=>
  NULL
  ["work":protected]=>
  NULL
  ["ctor":protected]=>
  array(1) {
    [0]=>
    object(Something)#2 (0) {
    }
  }
  ["last":protected]=>
  int(0)
}

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top