我不知道是否有人已经发现任何奇怪的行为apc_exists(),导致整个WAMP服务器挂起一起使用时的行为apc_add()或apc_store()?经过长时间的"调试"并最小化问题后,我最终得到了以下代码,导致我的WAMP崩溃.
据我所知,它需要1 apc_exists()和2 apc_add()访问不同的密钥.[因此它听起来像死锁问题]我在chrome中运行这个脚本,然后粉碎F5键,直到我得到两次发生rand-thingy.那时或第一次它通常挂起.
<?php
$result = "asdfioasdjfoasdjf";
if(apc_exists("asdf")) {
echo("#1<br/>");
apc_add("launcher", $result, 1);
} else {
echo("#2<br/>");
$result = "asdfasdfasdf";
apc_add("launcher", $result, 10);
}
if(rand(0,100) < 4) {
echo("#stored data!<br/>");
apc_add("asdf", "2130130", 1);
}
?>
Run Code Online (Sandbox Code Playgroud)
我的系统/设置:
Windows 7 64位
WAMP 2.2d 32位
PHP版本5.3.10
apc版本3.1.9 | $ Revision:325040 $
我在代码中做错了吗?这与windows/wamp有关还是存在于其他环境和php/apc-versions中?在上述情况下,如果我更换apc_exists()用apc_fetch()时,系统不会崩溃,没有人知道为什么吗?