3

我正在使用 php 版本 7 并定义了一个扩展 Thread 类的类,但是当我运行我的程序时,它给了我 Class 'Thread' not found 错误。我搜索并发现我必须复制pthreadVC2.dll到 apache 和 system32 文件夹并复制php_pthreads.dll到 php/ ext 和 system32 文件夹并添加extension=php_pthreads.dllphp.ini. 我做了所有这些工作,但我再次收到该错误。php_pthreads.dll版本pthreadVC2.dll是 14

<?php
class exampleThread extends Thread
{
    var  $Mobile;
    var  $code;
    public function __construct($Mobile, $code)
    {
        $this->Mobile = $Mobile;
        $this->code = $code;
    }

    public function run()
    {

    }
};
?>
4

2 回答 2

1

正如duskwuff的回答中所述,pthreads 扩展不能在Web 服务器环境中使用

我们了大约 1 周,不幸的是不得不意识到,一旦它变得过于复杂,在 CLI 版本中运行它会导致太多问题 --> 我们停止并pthreads从我们的环境中删除。

我可以建议您:
由于我们仍然需要多线程功能,我们检查了几种方法并最终使用curl 多功能

使用 curl 多功能,您可以实现完整的多线程执行 - 尤其是在我们的案例中 - 当您有很多内核 [我们有 48 个] 时,当您使用 curl生成任务时,您确实可以使用所有内核......

PHP curl multi exec 文档很差。我指的是这个线程,您可以在其中获得更多信息。

于 2018-10-11T10:53:32.787 回答
0

pthreads 扩展不能在 Web 服务器环境中使用。它仅在 CLI 中可用。

无论你想做什么,你都需要想出另一种方法。

于 2017-11-23T05:43:05.887 回答