当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP缓存类 【先锋缓存类】Ver2004

ASP
Adodb.Command 平时很少注意到的一个参数
Asp.Net控件加载错误的解决方法
远程连接access数据库的方法
创建具有JScript的HTML的XMLHTTP
在Asp中如何快速优化分页的技巧
用VB生成DLL封装ASP代码,连接数据库
RS.OPEN SQL,CONN,A,B 全接触
利用adodb.stream直接下载任何后缀的文件(防盗链)
用ASP编程控制在IIS建立Web站点的程序代码
使用VBScript操作Html复选框(CheckBox)控件
把文章内容中涉及到的图片自动保存到本地服务器
两个不同数据库表的分页显示解决方案
使用组件封装数据库操作(一)
使用组件封装数据库操作(二)
如何在pb中创建COM组件,并在asp中调用并返回结果集?
用ASP和Microsoft.XMLDOM分析远程XML文件
浅谈无刷新取得远程数据技术
将ASP纪录集输出成n列的的表格形式显示的方法
在ASP中通过oo4o连接Oracle数据库的例子
Server Application Error详细解决办法

ASP缓存类 【先锋缓存类】Ver2004


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

以下为引用的内容:
<%
&apos;-------------------------------------------------------------------------------------
&apos;转发时请保留此声明信息,这段声明不并会影响你的速度!
&apos;************************** 【先锋缓存类】Ver2004 ********************************
&apos;作者:孙立宇、apollosun、ezhonghua
&apos;官方网站:http://www.lkstar.com 技术支持论坛:http://bbs.lkstar.com
&apos;电子邮件:[email protected] 在线QQ:94294089
&apos;版权声明:版权没有,盗版不究,源码公开,各种用途均可免费使用,欢迎你到技术论坛来寻求支持。
&apos;目前的ASP网站有越来越庞大的趋势,资源和速度成了瓶颈
&apos;——利用服务器端缓存技术可以很好解决这方面的矛盾,大大加速ASP运行和改善效率。
&apos;本人潜心研究了各种算法,应该说,这个类是当前最快最纯净的缓存类。
&apos;详细使用说明或范例请见下载附件或到本人官方站点下载!
&apos;--------------------------------------------------------------------------------------
class clsCache
&apos;----------------------------
private cache &apos;缓存内容
private cacheName &apos;缓存Application名称
private expireTime &apos;缓存过期时间
private expireTimeName &apos;缓存过期时间Application名称
private path &apos;缓存页URL路径

private sub class_initialize()
path=request.servervariables("url")
path=left(path,instrRev(path,"/"))
end sub

private sub class_terminate()
end sub

Public Property Get Version
Version="先锋缓存类 Version 2004"
End Property

public property get valid &apos;读取缓存是否有效/属性
if isempty(cache) or (not isdate(expireTime)) then
vaild=false
else
valid=true
end if
end property

public property get value &apos;读取当前缓存内容/属性
if isempty(cache) or (not isDate(expireTime)) then
value=null
elseif CDate(expireTime)<now then
value=null
else
value=cache
end if
end property

public property let name(str) &apos;设置缓存名称/属性
cacheName=str&path
cache=application(cacheName)
expireTimeName=str&"expire"&path
expireTime=application(expireTimeName)
end property

public property let expire(tm) &apos;设置缓存过期时间/属性
expireTime=tm
application.Lock()
application(expireTimeName)=expireTime
application.UnLock()
end property

public sub add(varCache,varExpireTime) &apos;对缓存赋值/方法
if isempty(varCache) or not isDate(varExpireTime) then
exit sub
end if
cache=varCache
expireTime=varExpireTime
application.lock
application(cacheName)=cache
application(expireTimeName)=expireTime
application.unlock
end sub

public sub clean() &apos;释放缓存/方法
application.lock
application(cacheName)=empty
application(expireTimeName)=empty
application.unlock
cache=empty
expireTime=empty
end sub

public function verify(varcache2) &apos;比较缓存值是否相同/方法——返回是或否
if typename(cache)<>typename(varcache2) then
verify=false
elseif typename(cache)="Object" then
if cache is varcache2 then
verify=true
else
verify=false
end if
elseif typename(cache)="Variant()" then
if join(cache,"^")=join(varcache2,"^") then
verify=true
else
verify=false
end if
else
if cache=varcache2 then
verify=true
else
verify=false
end if
end if
end function
%>