asfman
android developer
posts - 90,  comments - 213,  trackbacks - 0
一般来说,使用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
  }
}
%>
posted on 2006-04-17 10:55 汪杰 阅读(413) 评论(0)  编辑 收藏 引用 所属分类: asp(javascrpt)
只有注册用户登录后才能发表评论。

<2025年4月>
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

常用链接

留言簿(19)

随笔分类(1)

随笔档案(90)

文章分类(727)

文章档案(712)

相册

收藏夹

http://blog.csdn.net/prodigynonsense

友情链接

最新随笔

搜索

  •  

积分与排名

  • 积分 - 475128
  • 排名 - 6

最新随笔

最新评论

阅读排行榜

评论排行榜