java - PHP拓展装了pthreads导致其他拓展无法加载的问题
巴扎黑
巴扎黑 2017-04-11 09:44:04
[PHP讨论组]

系统:OS X。
通过brew install php56/pthreads 可以正常安装,但是这样安装后其他拓展(如:memcache,redis)就无法加载了(phpinfo()和php -m) 都没有。
然后如果重新brew uninstall php56再brew install php56后,memcache和redis之类消失的拓展又回来了,但是pthreads不见了。

试问如何解决?原因貌似是pthreads会在安装拓展时重新./configure php文件,导致其他拓展无法加载?

巴扎黑
巴扎黑

全部回复(3)
ringa_lee

要下载线程安全版本的php

阿神

pthreads 还是不要用了,都说不稳定。

PHP中文网

PHP有"非线程安全"和"线程安全"版本之分.

pthreads扩展需要工作在"线程安全"版本下的PHP.
原来那些"非线程安全"下编译的扩展自然是无法载入到"线程安全"版本PHP的.

我推荐的做法是自己编译线程安全版本PHP到单独目录.
只有当在configure时指定--enable-maintainer-zts选项或启用多线程SAPI时(比如构建event mpm apache2handler),PHP才会编译线程安全的代码.很多情况下PHP还是被用于非多线程环境,所以编译时不需要启用线程安全.

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号