【发布时间】:2010-07-19 19:24:47
【问题描述】:
我使用的是 Firefox 3.6.6。
我有一个名为 index.php 的 PHP 脚本,代码如下:
<?php
sleep(20); die(time());
?>
我打开两个浏览器选项卡,将 URL 复制到每个选项卡中,然后在每个选项卡中快速按 Enter。第一个选项卡在 20 多秒内完成。第二个标签在 40 多秒内完成。
我在 IE 中做了同样的实验,两个脚本在一秒钟内完成,大约 20 秒。
这是预期的行为吗?导致我对此进行测试的实际脚本是一个同步过程。我希望任何尝试执行它两次的人都会收到进程已经在进行中的错误,而不是让浏览器坐在那里等到它可以再次执行它。
如果这就是 Firefox 的工作方式,它如何确定一个页面何时是重复的,以及它应该将请求排队而不是同时运行它们?
我可以通过在末尾添加一个垃圾 GET 字符串来欺骗它,例如index.php 和 index.php?JUNK=1 都在 20 秒左右完成。
【问题讨论】:
-
IE 的行为似乎被破坏了(或者至少不理想)。当你没有理由认为你必须检索相同的东西时,为什么要检索两次?
标签: php internet-explorer firefox synchronized