Class Cache
Namespace: Aspose.Imaging
Assembly: Aspose.Imaging.dll (25.2.0)
Zawiera ustawienia pamięci podręcznej.
public static class Cache
Dziedziczenie
Członkowie dziedziczeni
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Przykłady
Ten przykład demonstruje użycie Aspose.Imaging.Cache```csharp [C#]
// Domyślnie folder pamięci podręcznej jest ustawiony na lokalny katalog tymczasowy użytkownika.
// Możesz także określić inny folder pamięci podręcznej niż domyślny, jak poniżej:
// Cache.CacheFolder = @"D:\\MyTemp";
// Tryb automatyczny jest elastyczny i wydajny
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// Wartość domyślna to 0, co oznacza, że nie ma górnego limitu
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabajt
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabajt
// Nie zaleca się zmiany poniższej właściwości, ponieważ może to znacznie wpłynąć na wydajność
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// W każdej chwili możesz sprawdzić, ile bajtów jest obecnie przydzielonych dla pamięci lub dysku
// pamięci podręcznej, badając poniższe właściwości
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Wykonaj przetwarzanie obrazu, jak poniżej
Aspose.Imaging.ImageOptions.GifOptions options = new Aspose.Imaging.ImageOptions.GifOptions();
options.Palette = new ColorPalette(new Aspose.Imaging.Color[] { Aspose.Imaging.Color.Red, Aspose.Imaging.Color.Blue, Aspose.Imaging.Color.Black, Aspose.Imaging.Color.White });
options.Source = new Aspose.Imaging.Sources.StreamSource(new System.IO.MemoryStream(), true);
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(options, 100, 100))
{
Aspose.Imaging.Color[] pixels = new Aspose.Imaging.Color[10000];
for (int i = 0; i < pixels.Length; i++)
{
pixels[i] = Aspose.Imaging.Color.White;
}
image.SavePixels(image.Bounds, pixels);
// po wykonaniu powyższego kodu w pamięci zostanie przydzielonych 40000 bajtów.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// Właściwości przydziału mogą być używane do sprawdzenia, czy wszystkie obiekty Aspose.Imaging zostały prawidłowo usunięte.
// W przypadku, gdy zapomniałeś wywołać dispose na jakimś obiekcie, wartości pamięci podręcznej będą różne od 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
## Właściwości
### <a id="Aspose_Imaging_Cache_AllocatedDiskBytesCount"></a> AllocatedDiskBytesCount
Pobiera liczbę przydzielonych bajtów na dysku.
```csharp
public static long AllocatedDiskBytesCount { get; }
Wartość właściwości
Przykłady
Ten przykład demonstruje użycie Aspose.Imaging.Cache```csharp [C#]
// Domyślnie folder pamięci podręcznej jest ustawiony na lokalny katalog tymczasowy użytkownika.
// Możesz także określić inny folder pamięci podręcznej niż domyślny, jak poniżej:
// Cache.CacheFolder = @"D:\\MyTemp";
// Tryb automatyczny jest elastyczny i wydajny
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// Wartość domyślna to 0, co oznacza, że nie ma górnego limitu
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabajt
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabajt
// Nie zaleca się zmiany poniższej właściwości, ponieważ może to znacznie wpłynąć na wydajność
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// W każdej chwili możesz sprawdzić, ile bajtów jest obecnie przydzielonych dla pamięci lub dysku
// pamięci podręcznej, badając poniższe właściwości
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Wykonaj przetwarzanie obrazu, jak poniżej
Aspose.Imaging.ImageOptions.GifOptions options = new Aspose.Imaging.ImageOptions.GifOptions();
options.Palette = new ColorPalette(new Aspose.Imaging.Color[] { Aspose.Imaging.Color.Red, Aspose.Imaging.Color.Blue, Aspose.Imaging.Color.Black, Aspose.Imaging.Color.White });
options.Source = new Aspose.Imaging.Sources.StreamSource(new System.IO.MemoryStream(), true);
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(options, 100, 100))
{
Aspose.Imaging.Color[] pixels = new Aspose.Imaging.Color[10000];
for (int i = 0; i < pixels.Length; i++)
{
pixels[i] = Aspose.Imaging.Color.White;
}
image.SavePixels(image.Bounds, pixels);
// po wykonaniu powyższego kodu w pamięci zostanie przydzielonych 40000 bajtów.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// Właściwości przydziału mogą być używane do sprawdzenia, czy wszystkie obiekty Aspose.Imaging zostały prawidłowo usunięte.
// W przypadku, gdy zapomniałeś wywołać dispose na jakimś obiekcie, wartości pamięci podręcznej będą różne od 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
### <a id="Aspose_Imaging_Cache_AllocatedMemoryBytesCount"></a> AllocatedMemoryBytesCount
Pobiera liczbę przydzielonych bajtów w pamięci.
```csharp
public static long AllocatedMemoryBytesCount { get; }
Wartość właściwości
Przykłady
Ten przykład demonstruje użycie Aspose.Imaging.Cache```csharp [C#]
// Domyślnie folder pamięci podręcznej jest ustawiony na lokalny katalog tymczasowy użytkownika.
// Możesz także określić inny folder pamięci podręcznej niż domyślny, jak poniżej:
// Cache.CacheFolder = @"D:\\MyTemp";
// Tryb automatyczny jest elastyczny i wydajny
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// Wartość domyślna to 0, co oznacza, że nie ma górnego limitu
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabajt
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabajt
// Nie zaleca się zmiany poniższej właściwości, ponieważ może to znacznie wpłynąć na wydajność
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// W każdej chwili możesz sprawdzić, ile bajtów jest obecnie przydzielonych dla pamięci lub dysku
// pamięci podręcznej, badając poniższe właściwości
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Wykonaj przetwarzanie obrazu, jak poniżej
Aspose.Imaging.ImageOptions.GifOptions options = new Aspose.Imaging.ImageOptions.GifOptions();
options.Palette = new ColorPalette(new Aspose.Imaging.Color[] { Aspose.Imaging.Color.Red, Aspose.Imaging.Color.Blue, Aspose.Imaging.Color.Black, Aspose.Imaging.Color.White });
options.Source = new Aspose.Imaging.Sources.StreamSource(new System.IO.MemoryStream(), true);
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(options, 100, 100))
{
Aspose.Imaging.Color[] pixels = new Aspose.Imaging.Color[10000];
for (int i = 0; i < pixels.Length; i++)
{
pixels[i] = Aspose.Imaging.Color.White;
}
image.SavePixels(image.Bounds, pixels);
// po wykonaniu powyższego kodu w pamięci zostanie przydzielonych 40000 bajtów.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// Właściwości przydziału mogą być używane do sprawdzenia, czy wszystkie obiekty Aspose.Imaging zostały prawidłowo usunięte.
// W przypadku, gdy zapomniałeś wywołać dispose na jakimś obiekcie, wartości pamięci podręcznej będą różne od 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
### <a id="Aspose_Imaging_Cache_CacheFolder"></a> CacheFolder
Pobiera lub ustawia folder pamięci podręcznej.
```csharp
public static string CacheFolder { get; set; }
Wartość właściwości
CacheType
Pobiera lub ustawia schemat pamięci podręcznej używany.
public static CacheType CacheType { get; set; }
Wartość właściwości
Przykłady
Ten przykład demonstruje użycie Aspose.Imaging.Cache```csharp [C#]
// Domyślnie folder pamięci podręcznej jest ustawiony na lokalny katalog tymczasowy użytkownika.
// Możesz także określić inny folder pamięci podręcznej niż domyślny, jak poniżej:
// Cache.CacheFolder = @"D:\\MyTemp";
// Tryb automatyczny jest elastyczny i wydajny
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// Wartość domyślna to 0, co oznacza, że nie ma górnego limitu
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabajt
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabajt
// Nie zaleca się zmiany poniższej właściwości, ponieważ może to znacznie wpłynąć na wydajność
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// W każdej chwili możesz sprawdzić, ile bajtów jest obecnie przydzielonych dla pamięci lub dysku
// pamięci podręcznej, badając poniższe właściwości
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Wykonaj przetwarzanie obrazu, jak poniżej
Aspose.Imaging.ImageOptions.GifOptions options = new Aspose.Imaging.ImageOptions.GifOptions();
options.Palette = new ColorPalette(new Aspose.Imaging.Color[] { Aspose.Imaging.Color.Red, Aspose.Imaging.Color.Blue, Aspose.Imaging.Color.Black, Aspose.Imaging.Color.White });
options.Source = new Aspose.Imaging.Sources.StreamSource(new System.IO.MemoryStream(), true);
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(options, 100, 100))
{
Aspose.Imaging.Color[] pixels = new Aspose.Imaging.Color[10000];
for (int i = 0; i < pixels.Length; i++)
{
pixels[i] = Aspose.Imaging.Color.White;
}
image.SavePixels(image.Bounds, pixels);
// po wykonaniu powyższego kodu w pamięci zostanie przydzielonych 40000 bajtów.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// Właściwości przydziału mogą być używane do sprawdzenia, czy wszystkie obiekty Aspose.Imaging zostały prawidłowo usunięte.
// W przypadku, gdy zapomniałeś wywołać dispose na jakimś obiekcie, wartości pamięci podręcznej będą różne od 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
### <a id="Aspose_Imaging_Cache_ExactReallocateOnly"></a> ExactReallocateOnly
Pobiera lub ustawia wartość wskazującą, czy reallocacja powinna być dokładna, czy nie. Jeśli reallocacja jest niedokładna, wydajność powinna być wyższa.
```csharp
public static bool ExactReallocateOnly { get; set; }
Wartość właściwości
Przykłady
Ten przykład demonstruje użycie Aspose.Imaging.Cache```csharp [C#]
// Domyślnie folder pamięci podręcznej jest ustawiony na lokalny katalog tymczasowy użytkownika.
// Możesz także określić inny folder pamięci podręcznej niż domyślny, jak poniżej:
// Cache.CacheFolder = @"D:\\MyTemp";
// Tryb automatyczny jest elastyczny i wydajny
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// Wartość domyślna to 0, co oznacza, że nie ma górnego limitu
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabajt
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabajt
// Nie zaleca się zmiany poniższej właściwości, ponieważ może to znacznie wpłynąć na wydajność
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// W każdej chwili możesz sprawdzić, ile bajtów jest obecnie przydzielonych dla pamięci lub dysku
// pamięci podręcznej, badając poniższe właściwości
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Wykonaj przetwarzanie obrazu, jak poniżej
Aspose.Imaging.ImageOptions.GifOptions options = new Aspose.Imaging.ImageOptions.GifOptions();
options.Palette = new ColorPalette(new Aspose.Imaging.Color[] { Aspose.Imaging.Color.Red, Aspose.Imaging.Color.Blue, Aspose.Imaging.Color.Black, Aspose.Imaging.Color.White });
options.Source = new Aspose.Imaging.Sources.StreamSource(new System.IO.MemoryStream(), true);
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(options, 100, 100))
{
Aspose.Imaging.Color[] pixels = new Aspose.Imaging.Color[10000];
for (int i = 0; i < pixels.Length; i++)
{
pixels[i] = Aspose.Imaging.Color.White;
}
image.SavePixels(image.Bounds, pixels);
// po wykonaniu powyższego kodu w pamięci zostanie przydzielonych 40000 bajtów.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// Właściwości przydziału mogą być używane do sprawdzenia, czy wszystkie obiekty Aspose.Imaging zostały prawidłowo usunięte.
// W przypadku, gdy zapomniałeś wywołać dispose na jakimś obiekcie, wartości pamięci podręcznej będą różne od 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
#### Uwagi
Dokładna reallocacja będzie wykonywać reallocację dodatkowej pamięci tylko do określonego górnego limitu.
Podczas przekazywania górnego limitu dla pamięci w pamięci podczas reallocacji, dane z pamięci podręcznej będą kopiowane na dysk, jeśli to możliwe.
Podczas przekazywania górnego limitu dla pamięci dyskowej podczas reallocacji zgłaszany jest odpowiedni wyjątek.
Wydajność powinna być wyższa, jeśli ta opcja jest wyłączona, ponieważ nie będą wykonywane dodatkowe operacje kopiowania, jeśli to możliwe,
jednak może to również prowadzić do przekroczenia określonych górnych limitów dla pamięci lub dysku.
### <a id="Aspose_Imaging_Cache_MaxDiskSpaceForCache"></a> MaxDiskSpaceForCache
Pobiera lub ustawia maksymalną dostępną przestrzeń dyskową dla pamięci podręcznej. Określona wartość to liczba megabajtów.
```csharp
public static int MaxDiskSpaceForCache { get; set; }
Wartość właściwości
Przykłady
Ten przykład demonstruje użycie Aspose.Imaging.Cache```csharp [C#]
// Domyślnie folder pamięci podręcznej jest ustawiony na lokalny katalog tymczasowy użytkownika.
// Możesz także określić inny folder pamięci podręcznej niż domyślny, jak poniżej:
// Cache.CacheFolder = @"D:\\MyTemp";
// Tryb automatyczny jest elastyczny i wydajny
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// Wartość domyślna to 0, co oznacza, że nie ma górnego limitu
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabajt
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabajt
// Nie zaleca się zmiany poniższej właściwości, ponieważ może to znacznie wpłynąć na wydajność
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// W każdej chwili możesz sprawdzić, ile bajtów jest obecnie przydzielonych dla pamięci lub dysku
// pamięci podręcznej, badając poniższe właściwości
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Wykonaj przetwarzanie obrazu, jak poniżej
Aspose.Imaging.ImageOptions.GifOptions options = new Aspose.Imaging.ImageOptions.GifOptions();
options.Palette = new ColorPalette(new Aspose.Imaging.Color[] { Aspose.Imaging.Color.Red, Aspose.Imaging.Color.Blue, Aspose.Imaging.Color.Black, Aspose.Imaging.Color.White });
options.Source = new Aspose.Imaging.Sources.StreamSource(new System.IO.MemoryStream(), true);
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(options, 100, 100))
{
Aspose.Imaging.Color[] pixels = new Aspose.Imaging.Color[10000];
for (int i = 0; i < pixels.Length; i++)
{
pixels[i] = Aspose.Imaging.Color.White;
}
image.SavePixels(image.Bounds, pixels);
// po wykonaniu powyższego kodu w pamięci zostanie przydzielonych 40000 bajtów.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// Właściwości przydziału mogą być używane do sprawdzenia, czy wszystkie obiekty Aspose.Imaging zostały prawidłowo usunięte.
// W przypadku, gdy zapomniałeś wywołać dispose na jakimś obiekcie, wartości pamięci podręcznej będą różne od 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
#### Uwagi
Wartość 0 spowoduje wykorzystanie całej dostępnej pamięci i działa jako brak górnego limitu.
### <a id="Aspose_Imaging_Cache_MaxMemoryForCache"></a> MaxMemoryForCache
Pobiera lub ustawia maksymalną dostępną pamięć dla pamięci podręcznej w pamięci. Określona wartość to liczba megabajtów.
```csharp
public static int MaxMemoryForCache { get; set; }
Wartość właściwości
Przykłady
Ten przykład demonstruje użycie Aspose.Imaging.Cache```csharp [C#]
// Domyślnie folder pamięci podręcznej jest ustawiony na lokalny katalog tymczasowy użytkownika.
// Możesz także określić inny folder pamięci podręcznej niż domyślny, jak poniżej:
// Cache.CacheFolder = @"D:\\MyTemp";
// Tryb automatyczny jest elastyczny i wydajny
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// Wartość domyślna to 0, co oznacza, że nie ma górnego limitu
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabajt
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabajt
// Nie zaleca się zmiany poniższej właściwości, ponieważ może to znacznie wpłynąć na wydajność
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// W każdej chwili możesz sprawdzić, ile bajtów jest obecnie przydzielonych dla pamięci lub dysku
// pamięci podręcznej, badając poniższe właściwości
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Wykonaj przetwarzanie obrazu, jak poniżej
Aspose.Imaging.ImageOptions.GifOptions options = new Aspose.Imaging.ImageOptions.GifOptions();
options.Palette = new ColorPalette(new Aspose.Imaging.Color[] { Aspose.Imaging.Color.Red, Aspose.Imaging.Color.Blue, Aspose.Imaging.Color.Black, Aspose.Imaging.Color.White });
options.Source = new Aspose.Imaging.Sources.StreamSource(new System.IO.MemoryStream(), true);
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(options, 100, 100))
{
Aspose.Imaging.Color[] pixels = new Aspose.Imaging.Color[10000];
for (int i = 0; i < pixels.Length; i++)
{
pixels[i] = Aspose.Imaging.Color.White;
}
image.SavePixels(image.Bounds, pixels);
// po wykonaniu powyższego kodu w pamięci zostanie przydzielonych 40000 bajtów.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// Właściwości przydziału mogą być używane do sprawdzenia, czy wszystkie obiekty Aspose.Imaging zostały prawidłowo usunięte.
// W przypadku, gdy zapomniałeś wywołać dispose na jakimś obiekcie, wartości pamięci podręcznej będą różne od 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
#### Uwagi
Wartość 0 spowoduje wykorzystanie całej dostępnej pamięci i działa jako brak górnego limitu.
## Metody
### <a id="Aspose_Imaging_Cache_SetDefaults"></a> SetDefaults\(\)
Ustawia ustawienia Aspose.Imaging.Cache na domyślne.
```csharp
public static void SetDefaults()