从命令行 PHP客户端(Windows上的 PHP 5.2)执行PHP脚本时,我得到一个奇怪的5到7秒的暂停. 在此暂停期间,PHP脚本在返回命令提示符之前只显示“冻结”一段时间.它没有使用任何重要的CPU时间,就像它正在等待一些延迟. 在尝试使用PHP.ini之后,我将其缩小到了启用mysql或mysqli扩展的事实.如果这两个扩展都被禁用,没有恼人的暂停,PHP脚本只需几毫秒即可终止. 我正在
从命令行
PHP客户端(Windows上的
PHP 5.2)执行PHP脚本时,我得到一个奇怪的5到7秒的暂停.
在此暂停期间,PHP脚本在返回命令提示符之前只显示“冻结”一段时间.它没有使用任何重要的cpu时间,就像它正在等待一些延迟.
在尝试使用PHP.ini之后,我将其缩小到了启用MysqL或MysqLi扩展的事实.如果这两个扩展都被禁用,没有恼人的暂停,PHP脚本只需几毫秒即可终止.
我正在使用的命令是:
"C:\Program Files\PHP\PHP.exe" -f %1
其中%1是PHP脚本.
即使正在执行的PHP脚本基本上为空,仍会发生暂停:
<?PHP
?>
你知道是什么导致这个暂停以及如何在命令行上允许MysqL或MysqLi支持PHP的同时删除它吗?
它是一个
bug in mysql.你可以通过获取最新的libMysqL.dll(5.1.31或更高版本来解决它.一些旧版本也可以工作 – 见第二个链接).确保实际使用的是libMysqL.dll,并且路径中没有其他libMysqL.dlls.有关详细信息,请参阅相关的
php issue.