PHP параллельно, как передать переменную в поток? - PullRequest
0 голосов
/ 07 апреля 2020

Я использую библиотеку Parallel PHP, но я не знаю, как передать переменную моего скрипта в параллельный поток. Я вижу в документации, что я должен передать аргумент массива в функции «run», но я не знаю, как получить доступ к значению аргумента.

Мой скрипт:

<?php
$runtime = new \parallel\Runtime();


$future1 = $runtime->run(function(){

echo argv

},array(22,'hi')); // here the argv but how to access in this in $future1 ?
?>

Ссылка на документацию о функции параллельного запуска: https://www.php.net/manual/en/parallel-runtime.run.php

Спасибо.

1 Ответ

0 голосов
/ 07 апреля 2020

Я решил свою проблему. Я упал на это действительно удачей. Вот решение: также было достаточно указать в замыкании в том же порядке, что и массив, имя, связанное со значениями массива. Например, вот пример:

<?php
$runtime = new \parallel\Runtime();

$myvar = 'hello';
$var2 = 'Guys';
$future1 = $runtime->run(function($first,$second){

echo $first.PHP_EOL; // hello
echo $second; //Guys

},array($myvar,$var2));

/*Result: 
hello
Guys
*/
?>
...