pthread with php 7.0.8 (ZTS)
pthread with php 7.0.8 (ZTS)
我想在 php 7.0.8 (ZTS) 中使用 pthreads(手动编译和配置)
我在 php 的编译过程中添加了以下配置:
--enable-maintainer-zts \
--enable-pthreads=shared \
--with-tsrm-pthreads \
NOTICE: fpm is running, pid 25546
NOTICE: ready to handle connections
我使用 pecl 添加了 pthread 扩展:pecl install pthreads-3.1.6
并将扩展=pthreads.so 添加到我的 php.ini 中。但是重启后 php7-fpm, php-fpm 不是 运行 :
NOTICE: Finishing ...
NOTICE: exiting, bye-bye!
我有一个 502 nginx 错误。
如何在不退出 php-fpm 的情况下将此扩展添加到 php.ini?
您应该使用 php-cli 来使用 pthreads。您可以为 CLI 创建第二个 php.ini 配置:
首先,如果不存在,请将 php.ini 复制到 php-cli.ini :
cp /PATH_OF_YOUR_PHP_INSTALLATION/php.ini /PATH_OF_PHP_INSTALLATION/php-cli.ini
然后,用 PECL 安装 pthreads(如果 php 是用
--enable-maintainer-zts \ --enable-pthreads=shared \ --with-tsrm-pthreads
)
pecl install pthreads
然后,将扩展的配置添加到您的 php-cli.ini :
echo "extension=/PATH_OF_EXTENSION/pthreads.so" >>/PATH_OF_PHP_INSTALLATION/php-cli.ini
最后,重启你的 php7-fpm 服务:
service php7-fpm restart
您可以测试 pthread 安装是否正常工作以创建测试 class 并使用 php 执行它:
创建文件:ImportWorker.php
<?php
class ImportWorker extends Worker {
private $data;
public function __construct($_data) {
$this->data = $_data;//
}
public function run(){
var_dump("Worker test");
}
}
执行:php ImportWorker.php
-> 如果你有任何错误,那就是 pthreads 没有工作。
我想在 php 7.0.8 (ZTS) 中使用 pthreads(手动编译和配置) 我在 php 的编译过程中添加了以下配置:
--enable-maintainer-zts \
--enable-pthreads=shared \
--with-tsrm-pthreads \
NOTICE: fpm is running, pid 25546
NOTICE: ready to handle connections
我使用 pecl 添加了 pthread 扩展:pecl install pthreads-3.1.6
并将扩展=pthreads.so 添加到我的 php.ini 中。但是重启后 php7-fpm, php-fpm 不是 运行 :
NOTICE: Finishing ...
NOTICE: exiting, bye-bye!
我有一个 502 nginx 错误。
如何在不退出 php-fpm 的情况下将此扩展添加到 php.ini?
您应该使用 php-cli 来使用 pthreads。您可以为 CLI 创建第二个 php.ini 配置:
首先,如果不存在,请将 php.ini 复制到 php-cli.ini :
cp /PATH_OF_YOUR_PHP_INSTALLATION/php.ini /PATH_OF_PHP_INSTALLATION/php-cli.ini
然后,用 PECL 安装 pthreads(如果 php 是用
--enable-maintainer-zts \ --enable-pthreads=shared \ --with-tsrm-pthreads
)pecl install pthreads
然后,将扩展的配置添加到您的 php-cli.ini :
echo "extension=/PATH_OF_EXTENSION/pthreads.so" >>/PATH_OF_PHP_INSTALLATION/php-cli.ini
最后,重启你的 php7-fpm 服务:
service php7-fpm restart
您可以测试 pthread 安装是否正常工作以创建测试 class 并使用 php 执行它: 创建文件:ImportWorker.php
<?php
class ImportWorker extends Worker {
private $data;
public function __construct($_data) {
$this->data = $_data;//
}
public function run(){
var_dump("Worker test");
}
}
执行:php ImportWorker.php
-> 如果你有任何错误,那就是 pthreads 没有工作。