CacheItemPriority 列舉
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
指定儲存在 Cache 物件中的項目相對優先順序。
public enum class CacheItemPriority
public enum CacheItemPriority
type CacheItemPriority =
Public Enum CacheItemPriority
- 繼承
欄位
| 名稱 | 值 | Description |
|---|---|---|
| Low | 1 | 具有此優先權等級的快取項目,隨著伺服器釋放系統記憶體,最有可能被從快取中刪除。 |
| BelowNormal | 2 | 具有此優先權等級的快取項目,隨著伺服器釋放系統記憶體,比被賦予 Normal 優先權的項目更可能從快取中刪除。 |
| Default | 3 | 快取項目的預設優先權值為 Normal。 |
| Normal | 3 | 具有此優先權等級的快取項目很可能會從快取中刪除,因為伺服器只會在這些具有 Low 或 BelowNormal 優先權的項目之後釋放系統記憶體。 此為預設值。 |
| AboveNormal | 4 | 具有此優先權等級的快取項目,在伺服器釋放系統記憶體時,比起被分配 Normal 優先權的快取項目,更不容易被刪除。 |
| High | 5 | 具有此優先權等級的快取項目,在伺服器釋放系統記憶體時,最不可能從快取中被刪除。 |
| NotRemovable | 6 | 具有此優先權等級的快取項目不會自動從快取中刪除,因為伺服器會釋放系統記憶體。 然而,具有此優先等級的物品會依物品的絕對或滑動有效期與其他物品一同移除。 |
範例
以下範例使用Cache.Insert該方法,將一個參數Cache設為 priority的物件中High加入項目:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script language="c#" runat="server">
public void Page_Load(Object sender, EventArgs e) {
String connectionString;
connectionString = "Data Source=localhost;Integrated Security=SSPI";
Cache.Insert("DSN", connectionString, null, DateTime.Now.AddMinutes(2), TimeSpan.Zero, CacheItemPriority.High, null);
}
</script>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Public Sub Page_Load(sender As Object, e As EventArgs)
Dim connectionString As String
connectionString = "Data Source=localhost;Integrated Security=SSPI"
Cache.Insert("DSN", connectionString, Nothing, DateTime.Now.AddMinutes(2), TimeSpan.Zero, CacheItemPriority.High, Nothing)
End Sub
</script>
備註
當承載 ASP.NET 應用程式的網頁伺服器記憶體不足時,Cache物件會選擇性地清除項目以釋放系統記憶體。 當某個項目被加入快取時,你可以為它設定相對於快取中其他物品的相對優先順序。 當你為高優先權值分配的項目,當伺服器處理大量請求時,較不容易從快取中刪除;而你為較低優先權值分配的項目則較可能被刪除。 預設值為 Normal。
Note
項目隨時可以透過程式化方式從快取中移除,無論其快取優先順序為何。