我听到过关于php的Swool项目的有希望的话。然而,在他们的文档/示例中,我只看到了服务器处理的实现(即如何设置Web服务器、回答请求等(。然而,我找不到示例,如何简单地从cli(即php myfile.php
(启动异步函数其中myfile.php
可能包含(我不希望(类似于SwooleSomeAsyncFunion
的内容(只是phseudo名称(:
SwooleSomeAsyncFunion( function(){ file_get_contents("http://site-1.com"); echo "hello"; } );
SwooleSomeAsyncFunion( function(){ do_long_running_function(); echo "world"; } );
SwooleSomeAsyncFunion( .... );
SwooleSomeAsyncFunion( .... );
SwooleSomeAsyncFunion( .... );
因此,只需从php-cli以异步方式执行多个函数。如何做到这一点?对于parallel
扩展,我与所描述的(parallelrun( function(){ ... } );
(完全相同,但不知道如何处理swole。(我不需要任何网络服务器,只需要cli(。
您可以使用Corun
和go
use function SwooleCoroutinego;
use function SwooleCoroutinerun;
run(function () {
go(function () {
file_get_contents("http://site-1.com"); echo "hello";
});
go(function () {
do_long_running_function(); echo "world";
});
});