日期:2008-10-29  浏览次数:21155 次

Using the Response.IsClientConnected property to determine whether
or not the browser is still connected to the server

When a browser requests an ASP page from the Web Server, but does
not wait for the entire page to be downloaded, the server continues
to process the request, wasting valuable CPU cycles.  If your Web
Server is Internet Information Server (IIS) 4.0 you can use the
Response.IsClientConnected property to determine whether or not the
browser is still connected to the server.  If it is not connected
to the server you can stop processing to conserve CPU cycles.
If you request an ASP page that contains the script below and use
PerfMon to monitor the CPU cycles on the Web server, you will
notice that if you click stop in the browser, the number of CPU
cycles will decrease sooner than if the loop had continued.

<%@ LANGUAGE="VBSCRIPT" %>
<%
Function IsConnectedAfter(Seconds)
Dim StartTime
Dim PauseTime

IsConnectedAfter = True
StartTime = Now

Do While DateDiff("s", StartTime, Now) < Seconds
PauseTime = Now
Do While DateDiff("s", PauseTime, Now) < 1
'Do Nothing
Loop
Response.Write "."
If Response.IsClientConnected = False then
IsConnectedAfter = False
Exit Function
End If

Loop
End Function
%>