CacheCls缓存的应用
CacheCls缓存的应用
发布时间:2016-12-29 来源:查字典编辑
摘要:复制代码代码如下:0ThenFori=0toUBound(Cachelist)DelCaheCachelist(i)NextEndIfEnd...

复制代码 代码如下:

<%

Rem=================================================================

Rem=类:CacheCls

Rem=说明:缓存的应用

Rem=Revision:1.01Beta

Rem=作者:熊氏英雄(cexo255)

Rem=Date:2005/05/618:38:10

Rem=QQ:30133499

Rem=MySite:Http://www.Relaxlife.net

Rem=下载:Http://www.Relaxlife.net/cexo/Cache_pro.rar

Rem=QQ群:4341998

Rem=适用:对一些常用到,而又不常改变的数据放入缓存中,调用速度要比每次都要从数据库中读要快N陪

Rem=================================================================

CacheName="RL"

ClassCacheCls

PrivateLocalCacheName,Cache_Data

PublicPropertyLetName(ByValvNewValue)

LocalCacheName=LCase(vNewValue)

Cache_Data=Application(CacheName&"_"&LocalCacheName)

EndProperty

PublicPropertyLetValue(ByValvNewValue)

DimN,i,NewValueArr

IfLocalCacheName<>""Then

N=CountInStr(vNewValue,"|")

NewValueArr=Split(vNewValue,"|",-1,1)

ReDimCache_Data(N)

Fori=0toN

Cache_Data(i)=NewValueArr(i)

Next

Application.Lock

Application(CacheName&"_"&LocalCacheName)=Cache_Data

Application.unLock

Else

Response.Write"设置缓存出错,或缓存名不能为空,请重新更新缓存"

Response.End()

EndIf

EndProperty

PublicPropertyGetValue()

IfLocalCacheName<>""Then

IfIsArray(Cache_Data)Then

Value=Cache_Data

EndIf

Else

Response.Write"设置缓存出错,或缓存名不能为空,请重新更新缓存"

Response.End()

EndIf

EndProperty

'取指定缓存中的值

PublicFunctionGetCacheValue(MyCaheName)

GetCacheValue=Application(CacheName&"_"&MyCaheName)

EndFunction

'取所有缓存名

PublicFunctionGetallCacheName()

DimCacheobj

ForEachCacheobjinApplication.Contents

GetallCacheName=GetallCacheName&Cacheobj&","

Next

GetallCacheName=Left(GetallCacheName,Len(GetallCacheName)-1)

GetallCacheName=Replace(GetallCacheName,CacheName&"_","")

EndFunction

'释放缓存

PublicSubDelCahe(MyCaheName)

Application.Lock

Application.Contents.Remove(CacheName&"_"&MyCaheName)

Application.unLock

EndSub

'释放所有缓存

PublicSubRemoveAllCache()

DimCachelist,i

Cachelist=Split(GetallCacheName(),",")

IfUBound(Cachelist)>0Then

Fori=0toUBound(Cachelist)

DelCaheCachelist(i)

Next

EndIf

EndSub

'统计字符Char在Str中出现的次数

PrivateFunctionCountInStr(Str,Char)

CountInStr=0

Dimi,CharLen

CharLen=Len(Char)

Fori=1toLen(Str)

IfMid(Str,i,CharLen)=CharThenCountInStr=CountInStr+1

Next

EndFunction

EndClass

DimCachePro

SetCachePro=NewCacheCls

'设置缓存“cexo255”和它的值:"cexo2551|cexo2552|cexo2553|cexo2554|cexo2555"

CachePro.Name="cexo255"

CachePro.Value="cexo2551|cexo2552|cexo2553|cexo2554|cexo2555"

'取当前缓存中的值

'CacheArr=CachePro.Value

CachePro.Name="wxf"

CachePro.Value="wxf"

CachePro.Name="dw"

CachePro.Value="dw"

'释放缓存cexo255

'CachePro.DelCahe("cexo255")

'释放所有缓存

'CachePro.RemoveAllCache

'取cexo255缓存中的值

CacheArr=CachePro.GetCacheValue("cexo255")

IfisArray(CacheArr)Then

Fori=0toUBound(CacheArr)

Response.WriteCacheArr(i)&"<br>"

Next

Else

Response.Write"缓存被释放!!!"

Endif

SetCachePro=Nothing

%>

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新ASP教程学习
热门ASP教程学习
编程开发子分类