asp 緩衝類程式碼

來源:互聯網
上載者:User

class Cache
 private obj   'cache內容
 private expireTime  '到期時間
 private expireTimeName '到期時間application名
 private cacheName  'cache內容application名
 private path   'uri
 private sub class_initialize()
  path=request.servervariables("url")
  path=left(path,instrRev(path,"/"))
 end sub
 private sub class_terminate()
 end sub
 public property get blEmpty
  '是否為空白
  if isempty(obj) then
   blEmpty=true
  else
   blEmpty=false
  end if
 end property
 public property get valid
  '是否可用(到期)
  if isempty(obj) or not isDate(expireTime) then
   valid=false
  elseif CDate(expireTime)<now then
    valid=false
  else
   valid=true
  end if
 end property
 public property let name(str)
  '設定cache名
  cacheName=str & path
  obj=application(cacheName)
  expireTimeName=str & "expires" & path
  expireTime=application(expireTimeName)
 end property
 public property let expires(tm)
  '重設定到期時間
  expireTime=tm
  application.lock
  application(expireTimeName)=expireTime
  application.unlock
 end property
 public sub add(var,expire)
  '賦值
  if isempty(var) or not isDate(expire) then
   exit sub
  end if
  obj=var
  expireTime=expire
  application.lock
  application(cacheName)=obj
  application(expireTimeName)=expireTime
  application.unlock
 end sub
 public property get value
  '取值
  if isempty(obj) or not isDate(expireTime) then
   value=null
  elseif CDate(expireTime)<now then
   value=null
  else
   value=obj
  end if
 end property
 public sub makeEmpty()
  '釋放application
  application.lock
  application(cacheName)=empty
  application(expireTimeName)=empty
  application.unlock
  obj=empty
  expireTime=empty
 end sub
 public function equal(var2)
  '比較
  if typename(obj)<>typename(var2) then
   equal=false
  elseif typename(obj)="Object" then
   if obj is var2 then
    equal=true
   else
    equal=false
   end if
  elseif typename(obj)="Variant()" then
   if join(obj,"^")=join(var2,"^") then
    equal=true
   else
    equal=false
   end if
  else
   if obj=var2 then
    equal=true
   else
    equal=false
   end if
  end if
 end function
end class
'清除cache內容
function clearapp()
on error resume next
dim i
for i=1 to application.Contents.count
    application.Contents(i)=empty
next
end function

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.