linux多线程,Linux多线程编程( 二 )


我们借助于 pthreads 实现:该项目提供了与基于Posix Threads的PHP兼容的多线程 。有啥亮点没?下面这些全是:一个易于使用,快速学习的面向对象的PHP 7.2线程API执行所有预定义和用户声明的方法和函数,包括闭包 。包括现成的同步无限的可能性...需要一些扩展的基础的支持,PHP 7.2 及以上版本,ZTS Enabled ( Thread Safety ),Posix Threads Implementation 。
还有一些注意事项:pthreads是一个面向对象的API,它提供了PHP中多线程所需的所有工具 。PHP应用程序可以创建,读取,写入,执行并与线程,辅助对象和线程对象同步 。警告:pthreads扩展名不能在Web服务器环境中使用 。因此,PHP中的线程应仅保留给基于CLI的应用程序使用 。命令行应用脚本完全适用,这也与我们编写 Bash,Python等等类似 。
【linux多线程,Linux多线程编程】下面举一个例子:然后执行一次:再执行一次:实际运用上面的代码是个示例性质的应用,仅仅是为了展示多线程运行 。下面来一段业务代码 。该类模拟一个url请求 。因为网络问题,有可能失败,或者不确定返回时间,所以适合并行 。接着我们使用该类进行多网络请求并发 。为了减轻系统负荷,使用微秒延时 。$t = microtime(true); $g = new AsyncWebRequest(sprintf("http://www.google.com/?q=%s 。

推荐阅读