当前位置: 首页 > 图文教程 > 网络编程 > ASP > 怎么判断一个对象是否已被释放

ASP
Asp Object 之:End
Asp Object 之:ServerVariables
Asp Object 之:Expires
Asp Object 之:ExpiresAbsolute
Asp Object 之:Flush
Asp Object 之:Form
Asp Object 之:IsClientConnected
Asp Object 之:PICS
Asp Object 之:QueryString
Asp Object 之:Redirect
Asp Object 之:Request.Cookies
Asp Object 之:Request
Asp Object 之:Response.Cookies
Asp Object 之:Response
Asp Object 之:Status
Asp Object 之:TotalBytes
Asp Object 之:Write
用ASP.Net编写留言本
如何把ASP编写成DLL(1)
如何把ASP编写成DLL(2)

ASP 中的 怎么判断一个对象是否已被释放


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 383 ::
收藏到网摘: n/a

我们通常用如上的形式来创建一个对象,并使用和释放它,问题是我们怎么去判断一个对象是否已被释放了呢?用isObject可以吗?我们来试下:

以下为引用的内容:
<%
Dim conn
Response.Write(isObject(conn)) '结果为False
Set conn = Server.CreateObject("ADODB.Connection")
Response.Write(isObject(conn)) '结果为True
Set conn = Nothing
Response.Write(isObject(conn)) '结果为True
%>

可见并不能使用isObject来判断一个对象是否已被释放,那我们用varType或typeName函数来试试看:

以下为引用的内容:
<%
Dim conn
Response.Write(typeName(conn)) '结果Empty
Set conn = Server.CreateObject("ADODB.Connection")
Response.Write(typeName(conn)) '结果Connection
Set conn = Nothing
Response.Write(typeName(conn)) '结果Nothing
%>

所以,判断一个对象是否被释放我们应用:typeName(conn)="Nothing"(一定要用Nothing不能用nothing,小写结果就不为True了,难道ASP也区分大小写?