100分求解settimeout问题!! 我的程序,大量使用了settimeout ,造成VPS的CPU占用率极大,导致网页不能用!!帮帮忙,什么方法能达到settimeout的功能还不占用CPU呢??!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 setTimeout 是浏览器端的JS的东西.. 不会耗用服务器资源的.你弄错了.唯一值得注意的是 setTimeout 动作中如果调用了服务器接口. 那就要优化服务器这个接口的耗用了. 我要用settimeout想服务段请求数据来更新页面!所以服务端CPU就高, 能不能用asp.net ajax写一个websever,通过服务端来对客服端进行实时刷新?有没有例子呢? "我要用settimeout想服务段请求数据来更新页面!"这个似乎太什么什么了....最好用别的方案.. 一般来说,使用asp来做聊天程序只能通过定时刷新服务端的方法来与其他用户交互,能不能象socket一样让客户端与服务器保持长连接,由服务端向浏览器推数据呢?下面的代码使用xmlhttp对象的同步获取方法作为进程暂停的手段,然后用无限循环来保持长连接。使用时把该页放入iframe中,根据情况向客户端吐js语句就行了。经过测试,该方法对服务端的cpu占用率影响很小,具有实用价值。<%@language=javascript%><%Server.ScriptTimeOut=99999var xh,dvxh=Server.createObject("Microsoft.XMLHTTP")while(1){ Response.write((new Date())+"<br>") Response.flush() dv=new Date().valueOf() while(new Date().valueOf()-dv<1000){ xh.open("GET","http://www.google.com/",false) xh.send() } if(!Response.IsClientConnected){ Session.abandon() break }}%>这段代码是实现ASP长连接的,没看明白 那位大侠解释下 setTimeout("",1000);你把时间设置长一点。应该会好一些吧。 setTimeout("",1000);这样不行<%@language=javascript%><%Server.ScriptTimeOut=99999var xh,dvxh=Server.createObject("Microsoft.XMLHTTP")while(1){ Response.write((new Date())+"<br>") Response.flush() dv=new Date().valueOf() while(new Date().valueOf()-dv<1000){ xh.open("GET","http://www.google.com/",false) xh.send() } if(!Response.IsClientConnected){ Session.abandon() break }}%>谁解释下 没有语言基础如何学好js呢?都有点想放弃了。 【求助】一个图片切换功能的代码怎么实现有效果切换呢? 页面传值问题 请问一个ajax的问题 如何动态改变背景图? 求高手解决!<DIV>坐标问题 如何得到一个form中单选框的个数,也可能为0 在JAVASCRIPT中的跳转到其他页面的方法中有没有一个tartget参数或类似的参数 大家来研究一下,这个水波纹效果是怎么做出来的 怎样用JS跟网页里的FLASH文件里的变量通讯? [请问]有没有现成的节点带有多个复选框的目录树? 怎么用JS写Test Case
你弄错了.唯一值得注意的是 setTimeout 动作中如果调用了服务器接口. 那就要优化服务器这个接口的耗用了.
最好用别的方案..
一般来说,使用asp来做聊天程序只能通过定时刷新服务端的方法来与其他用户交互,能不能象socket一样让客户端与服务器保持长连接,由服务端向浏览器推数据呢?下面的代码使用xmlhttp对象的同步获取方法作为进程暂停的手段,然后用无限循环来保持长连接。使用时把该页放入iframe中,根据情况向客户端吐js语句就行了。经过测试,该方法对服务端的cpu占用率影响很小,具有实用价值。<%@language=javascript%><%
Server.ScriptTimeOut=99999
var xh,dv
xh=Server.createObject("Microsoft.XMLHTTP")
while(1){
Response.write((new Date())+"<br>")
Response.flush()
dv=new Date().valueOf()
while(new Date().valueOf()-dv<1000){
xh.open("GET","http://www.google.com/",false)
xh.send()
}
if(!Response.IsClientConnected){
Session.abandon()
break
}
}
%>
这段代码是实现ASP长连接的,没看明白 那位大侠解释下
你把时间设置长一点。应该会好一些吧。
这样不行<%@language=javascript%><%
Server.ScriptTimeOut=99999
var xh,dv
xh=Server.createObject("Microsoft.XMLHTTP")
while(1){
Response.write((new Date())+"<br>")
Response.flush()
dv=new Date().valueOf()
while(new Date().valueOf()-dv<1000){
xh.open("GET","http://www.google.com/",false)
xh.send()
}
if(!Response.IsClientConnected){
Session.abandon()
break
}
}
%>谁解释下