快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

处理运行时间长的脚本以及内容大的主页

处理运行时间长的脚本以及内容大的主页

脚本运行时间的最长限制默认值为90秒,这是防止无限次循环的进行,是很有用的防护措施。不过,在一些特别场合中,你也许面临着脚本运行时间大于90秒的场合,例如,当你的脚本生成了一个十分巨大的主页时,你肯定不希望主页显示到一半时间就过了限制时间。那么你可以利用Server对象的ScriptTimeout属性来自己设定你希望的限制时间。例如下例:

<% Server.ScriptTimeOut=150 %>

<HTML>

<Head><title>落星</title></head>

<body>

<%

randomize

starx=60

for k=1 to 10

nextsecond=dateadd(“s”,10,time)

do while time<nextsecond

loop

Starx=starx+3*rnd()-1

for i=1 to starx

Response.Write(“&nbsp;”)

Next

Response.Write(“*<p>”)

Next

%>

</body>

</html>

这个脚本将会十分缓慢的显示落星,每隔10秒在相应位置显示一个星号。(见图14.2)。

由于在页首限定了150秒的限制时间,这个脚本才可能正常执行结束。

你自然也可以利用Server.ScriptTimeout属性来将限制时间减少到90秒以内,而且你还可以在Internet Service Manager中的Application Configuation对话框中的App Options页中修改ScriptTimeout属性,假如你将其改为-1,那么你的脚本将永远不会过期。



答应脚本执行很长时间就会在你网站资源上创建一个异常重要的管道,实际上,一个脚本也许会执行到甚至发出执行哀求的用户都已经离开的时候,这种情况下,这种脚本的继承执行对任何人都没有好处。幸运的是,Response对象的属性可以有所助益,IsClientConnected属性可以检查浏览器和服务端是否仍旧在连接。你可以利用这个属性将用户已经离开情况下的脚本停止执行。例如,下面这个例子会一直显示到连接终止。

<HTML>

<HEAD><TITLE>Obnoxious Page</title></head>

<body>

<%

while 1=1

Response.Write(“Hello! Magicw3 Com.”)

if NOT Response.IsClientConnected THEN Response.End

WEND

%>

</body>

</HTML>

请注重IsClientConnected属性仅仅在上一个Response.write调用时浏览器仍旧处于连接状态才有效。假如你运行了一个运行时间很长的脚本程序而没有输出任何东西,那么这个属性也就不会产生作用。
返回类别: 教程
上一教程: ASP OBJECT之:REQUEST
下一教程: 关于水晶报表10 的字报表数据填充和显示

您可以阅读与"处理运行时间长的脚本以及内容大的主页"相关的教程:
· SERVER.SCRIPTTIMEOUT:处理脚本运行时间长的方式
· 一个防止外部数据提交的脚本
· 让您的主页支持各种浏览设备(ASP+篇)(下)
· 表单递交内容检测脚本-这里只接受数字
· ASP和SQL SERVER时间处理方式Ⅰ
    微笑服务 优质保证 索取样品