CacheItemPolicy Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет набор подробностей об удалении и сроке действия конкретной записи кэша.
public ref class CacheItemPolicy
public class CacheItemPolicy
type CacheItemPolicy = class
Public Class CacheItemPolicy
- Наследование
-
CacheItemPolicy
Примеры
В следующем примере показано, как создать элемент кэша в памяти, который отслеживает путь к текстовому файлу. Кэш создает CacheItemPolicy объект и задает AbsoluteExpiration свойство для исключения кэша через 60 секунд.
Protected Sub Button1_Click(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles Button1.Click
Dim cache As ObjectCache = MemoryCache.Default
Dim fileContents As String = TryCast(cache("filecontents"), _
String)
If fileContents Is Nothing Then
Dim policy As New CacheItemPolicy()
policy.AbsoluteExpiration = _
DateTimeOffset.Now.AddSeconds(60.0)
Dim filePaths As New List(Of String)()
Dim cachedFilePath As String = Server.MapPath("~") & _
"\cacheText.txt"
filePaths.Add(cachedFilePath)
policy.ChangeMonitors.Add(New _
HostFileChangeMonitor(filePaths))
' Fetch the file contents.
fileContents = File.ReadAllText(cachedFilePath)
cache.Set("filecontents", fileContents, policy)
End If
Label1.Text = fileContents
End Sub
protected void Button1_Click(object sender, EventArgs e)
{
ObjectCache cache = MemoryCache.Default;
string fileContents = cache["filecontents"] as string;
if (fileContents == null)
{
CacheItemPolicy policy = new CacheItemPolicy();
policy.AbsoluteExpiration =
DateTimeOffset.Now.AddSeconds(60.0);
List<string> filePaths = new List<string>();
string cachedFilePath = Server.MapPath("~") +
"\\cacheText.txt";
filePaths.Add(cachedFilePath);
policy.ChangeMonitors.Add(new
HostFileChangeMonitor(filePaths));
// Fetch the file contents.
fileContents = File.ReadAllText(cachedFilePath);
cache.Set("filecontents", fileContents, policy);
}
Label1.Text = fileContents;
}
Комментарии
CacheItemPolicyЭкземпляр содержит сведения, которые могут быть связаны с записью кэша. Например, если запись кэша собирается удалить из кэша, CacheEntryUpdateArguments объект передается в метод обратного вызова. UpdatedCacheItemPolicyСвойство CacheEntryUpdateArguments объекта может передавать ссылку на CacheItemPolicy экземпляр, который может включать сведения о вытеснении и истечении срока действия записи кэша.
Некоторые методы в MemoryCache ObjectCache классах и принимают CacheItemPolicy экземпляр для описания политики вытеснения или истечения срока действия.
Примечания для тех, кто наследует этот метод
CacheItemPolicyТип не запечатан, поэтому разработчики пользовательского кэша могут расширить его.
Конструкторы
CacheItemPolicy() |
Инициализирует новый экземпляр класса CacheItemPolicy. |
Свойства
AbsoluteExpiration |
Получает или задает значение, указывающее, следует ли вытеснить запись кэша в указанный момент. |
ChangeMonitors |
Получает коллекцию объектов ChangeMonitor, связанных с записью кэша. |
Priority |
Получает или задает параметр приоритета, на основании которого принимается решение об удалении записи кэша. |
RemovedCallback |
Получает или задает ссылку на делегат CacheEntryRemovedCallback, вызываемый после удаления записи из кэша. |
SlidingExpiration |
Получает или задает значение, указывающее, следует ли удалить запись кэша, если к ней в течение определенного времени не осуществлялся доступ. |
UpdateCallback |
Получает или задает ссылку на делегат CacheEntryUpdateCallback, вызываемый перед удалением записи из кэша. |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |