我正在与hhvm 3.6.1
合作 - 请不要理解我对HHVM内部的有限理解以及它如何执行JIT。
我正在尝试在HHVM中抑制JIT编译并在解释模式下运行php。现在我猜你可以将php.ini
中的热身请求设置为一些任意高的数字,如:
hhvm.eval.jit_warmup_requests = 1000
但是,我想知道是否有人知道像jit_enabled=false
我这样做的原因是我看到运行xdebug并运行远程调试(看似随机的seg错误,文件与断点不匹配)以及想要将JIT考虑在内 - 这是否有意义所有这些都与HHVM如何运作有关。
答案 0 :(得分:0)
https://github.com/facebook/hhvm/wiki/INI-Settings声称INI表单确实是hhvm.jit
- 不确定这是否准确,但命令行选项肯定是-v Eval.Jit=false
。 (我很好奇你是如何确定JIT仍然启用且该选项不起作用的?)
也就是说,xdebug被认为是有效的,而且FB的团队(以及几乎所有用法,FB和out内部)都在启用JIT的情况下运行。信不信由你,此时实际上可能比解释者支持更好。
如果您遇到xdebug问题,则应提出问题:https://github.com/facebook/hhvm/issues
答案 1 :(得分:0)
这也困扰了几个小时。
要禁用JIT,您应该在server.ini中查找“hhvm.jit = 1”,而不是php.ini。