2013-05-10 20 views
4

我們可以在HttpRuntime Cache中設置一個項目的最大過期時間是多少?
什麼是默認的到期時間..?HttpRuntime Cache ....中項目的有效期限是多少?

public static void Add(string pName, object pValue) 
{ 
    System.Web.HttpRuntime.Cache.Add(pName, pValue, null, DateTime.Now.AddSeconds(60), TimeSpan.Zero, System.Web.Caching.CacheItemPriority.High, null); 
} 

在上面的代碼中第四個參數是'absoluteExpiration'。
我們可以在這裏提供的最大值是多少...?

如果我提供10-05-2014,該項目是否可在緩存中長時間使用......?
(此查詢與AppFabric緩存的實現有關,嘗試用AppFabric緩存代替Httpruntime緩存)。

回答

3

AbsoluteExpiration的最大值基本上是NoAbsoluteExpiration。要設置此,你會傳遞這個領域:

Cache.NoAbsoluteExpiration 

其他你可以使用任何你想要的價值,只要你告訴它它會緩存它。 但是,這當然假設你的服務器沒有被重置,你沒有清除AppFabric的緩存等(如果你使用HttpRuntime.Cache,那麼你的應用程序保持活動也是必要的)

0

這是一個默認的設置,iis的應用程序池在應用程序的某個時間間隔之後回收。這將停止您的應用程序,然後緩存將被清空,因此設置比應用程序池回收超時更長的時間將不起作用。 我認爲緩存的目的不是讓對象永遠活着,而是讓它們保持活躍一段時間來提高性能。

相關問題