我正在尝试安装PHP的最新pthreads扩展3.1.6 64位。
根据pthreads的作者build议,在http://github.com/krakjoe/pthreads
我已经把这两个dll放到了所需的位置。
将pthreadVC2.dll(包含在Windows发行版中)添加到与php.exe相同的目录中。 C:\ Apache24 \ php添加php_pthreads.dll到PHP扩展文件夹例如。 C:\ Apache的\ PHP \分机
并且在Windows \ system32目录下
并且在[Apache Http.confd] [1]中添加了LoadFile,
我已经添加了扩展到我的php.ini
php.ini中
但Apache不会启动,当我检查Apache的error.log,我有下面
[Tue Jun 28 11:38:31.184618 2016] [ssl:warn] [pid 8640:tid 352] AH01909:localhost:443:0服务器证书不包含与服务器名称匹配的ID
[Tue Jun 28 11:38:31.215819 2016] [core:warn] [pid 8640:tid 352] AH00098:pid文件C:/Apache24/logs/httpd.pid覆盖 – 以前的Apache运行不正常关机?
我已经将php_pthreads.dll扩展名移到了扩展名列表的顶部,并且没有任何喜悦。 它只是不会从这个pthreads dll开始。 但是,如果我评论回来;扩展= php_pthreads.dll,我的Apache将重新启动,但不是与此pthreads DLL。
这是一个错误还是我做错了什么?
我的系统设置窗口7 64位,与Apache 2.4.x VC14的小信息
PHP的信息
系统Windows NT NG10676 6.1 build 7601
(Windows 7企业版Service Pack 1)AMD64
build立dateJun 21 2016 15:08:19
编译器MSVC14(Visual C ++ 2015)
build筑学x64
线程安全启用
请注意,我的系统上安装了所有的VC编译器10,11,14都是64位,并安装了32位以防万一。
请注意,我已经尝试了所有关于pthreads安装的以前的线程,他们没有帮助我的安装。 我试过每一个谷歌网页,但他们只是不工作,任何帮助,将不胜感激。 如果PHP pthreadsdevise师可以在这个版本上发现一些东西。
自述文件引用 :
pthreads v3仅限于在CLI中操作:我已经花了很多年的时间来试图解释在web服务器中的线程是没有意义的,在1,111承诺pthreads后,我意识到,我的建议是不理睬的。
所以我正在推广这个建议,坚持和坚持:除了CLI之外,你不能安全,合理地使用pthread。
感谢收听 ;)
从博客引用来自v2的解释变化
…
EJB明确禁止程序员通过规范创建线程,现代Java甚至没有1:1的模型。 显然,这主要是因为环境可能会迁移(在一组服务器中移动),移动管理池之外的线程很难想象。 它比禁止创建线程更进一步,它禁止使用同步原语,因为如果一个节点在你保留一个锁的时候被移动了 – 所有的地狱崩溃了。
在Java中,通常我们不鼓励在Servlet中手动创建线程,因为我对pthreads的所有理由都感到沮丧。
虽然不是所有的环境都会实际上禁止它,但是它的运行尽可能深, 每个人都同意,在Web响应环境中创建真实(1:1)的线程是一个坏主意。
…