建站常识

asp怎么释放资源之ASP的对象释放

发布时间 | 2018/3/30  点击 | 

 

对于ASP程序,有以下几个基本的内置对象:

Application对象,Request对象,Response对象,Server对象,Session对象,

绝大多说的ASP的操作代码都是运用这些内置对象的方法。

除了以上几个内置对象外,我们平常编写ASP的程序(涉及到数据库)都还需要用到以下几种新创建的对象:

1、数据库连接对象

一般把这种对象叫CONNECTION

创建方法

dim ProConn

set ProConn=Server.CreateObject("ADODB.CONNECTION")

使用这个CONNECTION对象打开一个Access数据库

ProConn.Open "driver={Microsoft Access Driver (*.mdb)};uid=;pwd=;DBQ=" & Server.MapPath("DB.mdb")

2、Recordset对象

这种对象主要用来在ASP代码中执行数据库查询的SQL语句

创建方法

dim rs

Set rs=Server.CreateObject("ADODB.Recordset")

rs.Open strSQL,ProConn,1,1

'strSQL是SQL语句的字符串

'ProConn是CONNECTION对象

'1,1是游标参数

以上两种对象是我们经常碰到的,它们在使用完毕后必须注意的就是释放这些对象。

释放的方法如下:

ProConn.close

rs.close      

set ProConn=nothing    

set rs=nothing

接下来要说的是引用自创的DLL时使用的对象,关于怎么封装ASP代码为DLL请参看上一篇文章.

这种对象的使用如下:

Dim ConDB

set ConDB=Server.CreateObject("ConDBDLL.Conn")

'调用ConDB的方法

ConDB.ConnectDB()

ConDB.DBPath()

'ConnectDB()和DBPath()都是这个封装DLL中自定义的方法

CreateObject("ConDBDLL.Conn")中的ConDBDLL是这个DLL的工程名,Conn是这个工程中的class

简单的一句set ConDB=Server.CreateObject("ConDBDLL.Conn")就使ConDB变成了一个自创对象。

就是这么简单的一个对象,我却忘记了在调用创建这个对象的ASP文件的其他ASP源代码文件中释放掉,致使为以后存在了巨大的隐患。

这样没有释放的对象,在这个ASP的网站多次使用后,系统就会变得其慢无比,原因都是因为没有释放这个对象。

相关信息