1、扩展的编译安装php(Linux),编辑参数 --enable-maintainer-zts 是必选项:

2、下载 php7:

http://tw2.php.net/get/php-7.1.2.tar.gz/from/a/mirrorduoxc

3、解压并编译php

tar -zxf php-7.1.2.tar.gz

cd php-7.1.2

./configure --prefix=/usr/local/php712 --with-config-file-path=/usr/local/php712/etc --with-config-file-scan-dir=/usr/local/php712/etc/php.d --with-mcrypt=/usr/include --enable-mysqlnd --with-mysqli --with-pdo-mysql --enable-fpm --with-gd --with-iconv --with-zlib --enable-xml --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-ftp --enable-gd-native-ttf --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --enable-session --with-curl --with-jpeg-dir --enable-sqlite-utf8 --enable-sysvmsg --enable-sysvshm --enable-wddx --with-xsl --enable-opcache --enable-maintainer-zts

sudo make -j8 && sudo make install

4、php编译完之后开始编译安装 pthreads扩展

5、下载pthreads扩展

https://github.com/krakjoe/pthreads

6、解压并安装

tar -zxf pthreads-3.1.6.tgz

cd pthreads-3.1.6

./configure --with-php-config=/usr/local/php712/bin/php-config

sudo make -j8 && sudo make install

7、配置php.ini

sudo vim /usr/local/php712/etc/php.ini

在 php.ini 最后添加:

[pthreads]

extension=pthreads.so

8、测试pthreads扩展

Thread.php :

Class Thread {

public $hooks = array();

public $args = array();

public function thread() {

}

public function addthread($func) {

$args = array_slice(func_get_args(), 1);

$this->hooks[] = $func;

$this->args[] = $args;

return true;

}

public function runthread() {

if(isset($_GET['flag'])) {

$flag = intval($_GET['flag']);

}

if($flag || $flag === 0) {

call_user_func_array($this->hooks[$flag], $this->args[$flag]);

} else {

for($i = 0, $size = count($this->hooks); $i < $size; $i++) {

$fp=fsockopen($_SERVER['HTTP_HOST'],$_SERVER['SERVER_PORT']);

if($fp) {

$out = "GET {$_SERVER['PHP_SELF']}?flag=$i HTTP/1.1rn";

$out .= "Host: {$_SERVER['HTTP_HOST']}rn";

$out .= "Connection: Closernrn";

fputs($fp,$out);

fclose($fp);

}

}

}

}

}

test.php :

include('Thread.php');

Class AsyncOperation extends Thread {

public function __construct($arg){

$this->arg = $arg;

}

public function run(){

if($this->arg){

printf("Hello %s\n", $this->arg);

}

}

}

$thread = new AsyncOperation("World");

if($thread->start()){

$thread->join();

}

php pthread安装编译,php 多线程扩展 pthreads 安装 及 使用相关推荐

  1. php多线程扩展pthreads安装使用,swoole多进程,内置多进程

    pthreads下载安装教程 https://www.php.net/manual/zh/pthreads.installation.php 使用示例 class pthreadsTest exten ...

  2. Windows下PHP多线程扩展pthreads的安装

    线程都需要开启线程安全 及(ZTS版本) 不是(NTS版本) phpinfo(); Thread Safety 要为 enabled pthreads扩展安装步骤 1.查看phpinfo() 获取PH ...

  3. PHP多线程扩展pthreads示例

    <?php class Request extends Thread {public $url;public $data;public function __construct($url) {$ ...

  4. php amqp扩展安装,Linux下PHP扩展amqp安装

    本次测试环境 系统:CentOS5.8 x86-64 PHP:5.2.16(源码编译安装的) 扩展是C写的,由于C与RabbitMQ通信一般需要依赖rabbitmq-c库(也就是librabbitmq ...

  5. 安装php7的mysql扩展,php7安装mysql扩展的方法是什么

    php7安装mysql扩展的方法:1.下载mysql扩展并解压:2.使用phpize工具初始化并进行configure:3.执行[make && make install]命令:4.编 ...

  6. studiolibrary安装_DAZ Studio 3D扩展包安装使用教程

    1.首先,我们要知道Daz Studio的扩展包是什么. 默认安装的文件里包含了几种基础包,Genesis 1/2/3/8 Female/male 就是DAZ官方的基础人物模型.根据骨骼绑定的不同分为 ...

  7. 【Android Studio 3.5.3】安装编译环境,Android adb 安装及使用

    Android Studio安装 1.下载 android studio,直接上官网下载(下载速度超快):https://developer.android.google.cn/studio/ 2.安 ...

  8. php imap 安装_linux 下安装PHP的IMAP扩展实现邮件收发

    系统CentOS 6.5 PHP5.5.19 1.安装imap的依赖包: [root@iZ9482lp6yqZ]# yum install -y libc-client-* 没有安装编译错误提示: c ...

  9. docker php安装gd扩展_docker安装php扩展gd库

    Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 ...

最新文章

  1. mysql batch insert 遇到错误跳过_这是MySQL的bug吗?
  2. drawable文件怎么添加图片_怎么给PDF文件添加书签
  3. 苹果电脑可以装windows系统吗_不只是桌面,这个 Windows 皮肤可以帮你全局美化 Windows 系统
  4. 基于 Layui 的富文本编辑器和封面的实现方案
  5. 数据算法之二叉树平衡(BinTreeNode Rotate)的Java实现
  6. 【MVC 过滤器的应用】ASP.NET MVC 如何统计 Action 方法的执行时间
  7. serv-u设置被动模式注意的问题
  8. “华硕zx50j,键盘背光灯无法显示,fn组合键不可用”解决办法
  9. MVPArms框架学习遇到的一个问题——普通Activity配合Fragment出现空指针
  10. 文献笔记01 -- 综述 基于深度学习的入侵检测模型综述_张昊
  11. SVN、GIT图标不显示解决方案
  12. vue项目,地址栏中含有#是什么意思?如何去掉?
  13. 管理信息系统需求调研分析指南
  14. 帝国 html5免费模板,帝国CMS模板
  15. HTML中svg的作用,html中的svg可以用来干什么
  16. ACM赛后总结2018.09.23
  17. 极限存在准则 两个重要极限
  18. 旧服务器系统迁移移到虚拟机,服务器不关机进行虚拟机的迁移,vMotion 迁移
  19. DXP多引脚封装绘制方式
  20. 一个有趣的游戏fizzbuzz

热门文章

  1. Git 常用操作(5)- git clone/git checkout -b/git diff/git push/git pull
  2. iloc loc 区别
  3. 生成树计数Matrix-Tree定理-数学
  4. 小白给小白详解维特比算法(二)
  5. 你了解计算机系统的层次结构吗?计算机语言怎么发展的?
  6. Pass算子python 函数
  7. 车联网,挖掘数据价值
  8. Docker核心技术之数据管理
  9. adb.exe: device offline
  10. tomcat与resin的比较