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 объект передается методу обратного вызова. Свойство UpdatedCacheItemPolicyCacheEntryUpdateArguments объекта может передавать ссылку 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) |