js代码
window.onload = function ()
{
gp();
gp1();
}
function gp() {
$.ajax({
type: "post",
url: "Filepro.aspx",
data: {
type: "gp"
},
success: function (data) {
alert(data);
setTimeout("gp()", 500);
},
error: function (data) {
}
})
}
}
function gp1() {
$.ajax({
type: "post",
url: "Filepro1.aspx",
data: {
type: "gp"
},
success: function (data) {
alert(data);
setTimeout("gp1()", 500);
},
error: function (data) {
}
})
}
asp.net 代码
//Filepro.aspx
String tag = Request.Form["type"];
String a = "";
if (tag.Equals("gp"))
{
Thread.Sleep(5000);
Response.Write("我是0");
Response.End();
}
//Filepro1.aspx
String tag = Request.Form["type"];
String a = "";
if (tag.Equals("gp"))
{
Response.Write("我是1");
Response.End();
}
前台就是简单的发了两个异步请求出去 服务器有两个页面分别处理这两个请求,其中一个做了延时,我想要的效果是在大概五秒时间里 服务器返回N个“我是1”返回一个“我是0”但现在的现像是这两个请求总是大概五秒一次的同时返回,是服务器把这两个异步请求当成一个去处理了吗?其中一个Sleep的时候 另一个也被指挂起了? 我想要的那种效果应该怎么实现 请指教!
貌似你这两个请求都会进入 if (tag.Equals("gp")),都会停顿,而且你也没有同步,所以可能是分别停顿了互不影响的5秒,最后一起返回