效果图:

 

主要是通过后台线程来管理客户端的连接状态以及消息状态.

 webconfig配置

 

 

<appSettings>
    
<add key="IntervalTime" value="10000"/>间隔时间
    
<add key="HasDB" value="N"></add>是否查询数据库系统信息
    
<add key="ConnectInterval" value="4000"></add>连接间隔时间

  
</appSettings>

 

 

 

 

1.asp.net

 当客户段第一次连接的时候通过              

ThreadPool.RegisterWaitForSingleObject(client.EventWaitHandle, new System.Threading.WaitOrTimerCallback(WaitOrTimerCallback), client, ConnectInterval, true)向线程池添加一个可以定时执行函数,

设置

public AutoResetEvent EventWaitHandle = new AutoResetEvent(false);

client.EventWaitHandle

的状态,实现立即向客户端发送消息,通过这个函数实现客户端的长连接.保持客户端的可持续性.

 

 

 

2.通过AJAX轮询

 

 

ajax

 

 下载演示代码

 

 

 下载实现长连接的代码COMET.DLL

 

 

 另外另一种实现方法  实现

FluorineFx + Flex 实现 效果如下。

http://ftp-woody.d134.6266668.cn/chat2.aspx 

 

posted on 2009-11-07 09:03  woody.wu  阅读(3533)  评论(56编辑  收藏  举报