PHP 8.1.0 Released!

pht\Thread::addFunctionTask

(PECL pht >= 0.0.1)

pht\Thread::addFunctionTaskПотоковая передача функций

Описание

public pht\Thread::addFunctionTask(callable $func, mixed ...$funcArgs): void

Добавляет новую задачу функции во внутреннюю очередь задач pht\Thread.

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

func

Функция, которую нужно добавить в поток. Если она привязана к экземпляру, тогда $this станет null.

funcArgs

Необязательный список аргументов функции. Аргументы будут сериализованы (поскольку они передаются другому потоку).

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

Ничего не возвращает.

Примеры

Пример #1 Добавление новой задачи функции в поток

<?php

use pht\Thread;

class 
Test
{
    public static function 
run(){var_dump(5);}
    public static function 
run2(){var_dump(6);}
}

function 
aFunc(){var_dump(3);}

$thread = new Thread();

$thread->addFunctionTask(static function($one) {var_dump($one);}, 1);
$thread->addFunctionTask(function() {var_dump(2);});
$thread->addFunctionTask('aFunc');
$thread->addFunctionTask('array_map', function ($n) {var_dump($n);}, [4]);
$thread->addFunctionTask(['Test''run']);
$thread->addFunctionTask([new Test'run2']);

$thread->start();
$thread->join();

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

int(1)
int(2)
int(3)
int(4)
int(5)
int(6)

add a note add a note

User Contributed Notes

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