【发布时间】:2012-01-18 07:34:06
【问题描述】:
我有:
function send(){
$.get("/site/send.php", function(data){
alert(data);
}
}
在 site/send.php 我有:
sleep(1000)
echo "OK";
接下来我的 js 文件中有:
send();
$("#click").click(function(){
$.get("/site/reset.php", function(data){
alert(data);
}
})
在reset.php中:
echo "RESET";
在这个例子中,我有 XHR 直到 sleep
现在我有所有时间函数 send() 并且直到她没有停止 (> 1000) 然后我没有使用 .click() 函数开始。为什么这不是异步的?
这可能吗?也许可以取消网站上的所有请求?
【问题讨论】:
-
您可以有一个中间 PHP 脚本来管理这些任务。因此,您调用 AJAX 函数,该函数又调用 Manager.php 脚本。 Manager.php 脚本然后运行更多的 Worker1.php、Worker2.php、..WorkerX.php 脚本(并且不等待它们完成,只需使用 CLI 启动它们)来完成工作并更新工作状态数据库表。在此之后,您可以使用 AJAX 轮询不时地检查状态,并且您可以在状态表中标记一个工作人员以 sop 执行(依次检查工作人员)。这有点工作,但希望它有所帮助:)
-
谢谢,请给我简单的例子:)
标签: php javascript jquery ajax xmlhttprequest