Class Cache
Namespace: Aspose.Imaging
Assembly: Aspose.Imaging.dll (25.2.0)
Contém configurações de cache.
public static class Cache
Herança
Membros Herdados
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Exemplos
Este exemplo demonstra o uso de Aspose.Imaging.Cache```csharp [C#]
// Por padrão, a pasta de cache é configurada para o diretório temporário local do usuário.
// Você também pode especificar outra pasta de cache que não seja a padrão, como a seguinte:
// Cache.CacheFolder = @"D:\\MyTemp";
// O modo automático é flexível e eficiente
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// O valor padrão é 0, o que significa que não há limite superior
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabyte
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabyte
// Não é recomendado alterar a propriedade a seguir, pois isso pode afetar significativamente o desempenho
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// A qualquer momento, você pode verificar quantos bytes estão atualmente alocados para memória ou disco
// cache examinando as seguintes propriedades
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Realize algum processamento de imagem como abaixo
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);
// após executar o código acima, serão alocados 40000 bytes na memória.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// As propriedades de alocação podem ser usadas para verificar se todos os objetos Aspose.Imaging foram devidamente descartados.
// Caso você tenha esquecido de chamar dispose em algum objeto, os valores do cache serão diferentes de 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
## Propriedades
### <a id="Aspose_Imaging_Cache_AllocatedDiskBytesCount"></a> AllocatedDiskBytesCount
Obtém a contagem de bytes alocados em disco.
```csharp
public static long AllocatedDiskBytesCount { get; }
Valor da Propriedade
Exemplos
Este exemplo demonstra o uso de Aspose.Imaging.Cache```csharp [C#]
// Por padrão, a pasta de cache é configurada para o diretório temporário local do usuário.
// Você também pode especificar outra pasta de cache que não seja a padrão, como a seguinte:
// Cache.CacheFolder = @"D:\\MyTemp";
// O modo automático é flexível e eficiente
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// O valor padrão é 0, o que significa que não há limite superior
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabyte
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabyte
// Não é recomendado alterar a propriedade a seguir, pois isso pode afetar significativamente o desempenho
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// A qualquer momento, você pode verificar quantos bytes estão atualmente alocados para memória ou disco
// cache examinando as seguintes propriedades
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Realize algum processamento de imagem como abaixo
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);
// após executar o código acima, serão alocados 40000 bytes na memória.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// As propriedades de alocação podem ser usadas para verificar se todos os objetos Aspose.Imaging foram devidamente descartados.
// Caso você tenha esquecido de chamar dispose em algum objeto, os valores do cache serão diferentes de 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
### <a id="Aspose_Imaging_Cache_AllocatedMemoryBytesCount"></a> AllocatedMemoryBytesCount
Obtém a contagem de bytes alocados em memória.
```csharp
public static long AllocatedMemoryBytesCount { get; }
Valor da Propriedade
Exemplos
Este exemplo demonstra o uso de Aspose.Imaging.Cache```csharp [C#]
// Por padrão, a pasta de cache é configurada para o diretório temporário local do usuário.
// Você também pode especificar outra pasta de cache que não seja a padrão, como a seguinte:
// Cache.CacheFolder = @"D:\\MyTemp";
// O modo automático é flexível e eficiente
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// O valor padrão é 0, o que significa que não há limite superior
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabyte
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabyte
// Não é recomendado alterar a propriedade a seguir, pois isso pode afetar significativamente o desempenho
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// A qualquer momento, você pode verificar quantos bytes estão atualmente alocados para memória ou disco
// cache examinando as seguintes propriedades
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Realize algum processamento de imagem como abaixo
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);
// após executar o código acima, serão alocados 40000 bytes na memória.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// As propriedades de alocação podem ser usadas para verificar se todos os objetos Aspose.Imaging foram devidamente descartados.
// Caso você tenha esquecido de chamar dispose em algum objeto, os valores do cache serão diferentes de 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
### <a id="Aspose_Imaging_Cache_CacheFolder"></a> CacheFolder
Obtém ou define a pasta de cache.
```csharp
public static string CacheFolder { get; set; }
Valor da Propriedade
CacheType
Obtém ou define o esquema de cache utilizado.
public static CacheType CacheType { get; set; }
Valor da Propriedade
Exemplos
Este exemplo demonstra o uso de Aspose.Imaging.Cache```csharp [C#]
// Por padrão, a pasta de cache é configurada para o diretório temporário local do usuário.
// Você também pode especificar outra pasta de cache que não seja a padrão, como a seguinte:
// Cache.CacheFolder = @"D:\\MyTemp";
// O modo automático é flexível e eficiente
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// O valor padrão é 0, o que significa que não há limite superior
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabyte
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabyte
// Não é recomendado alterar a propriedade a seguir, pois isso pode afetar significativamente o desempenho
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// A qualquer momento, você pode verificar quantos bytes estão atualmente alocados para memória ou disco
// cache examinando as seguintes propriedades
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Realize algum processamento de imagem como abaixo
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);
// após executar o código acima, serão alocados 40000 bytes na memória.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// As propriedades de alocação podem ser usadas para verificar se todos os objetos Aspose.Imaging foram devidamente descartados.
// Caso você tenha esquecido de chamar dispose em algum objeto, os valores do cache serão diferentes de 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
### <a id="Aspose_Imaging_Cache_ExactReallocateOnly"></a> ExactReallocateOnly
Obtém ou define um valor que indica se a realocação deve ser exata ou não. Se a realocação não for exata, o desempenho deve ser maior.
```csharp
public static bool ExactReallocateOnly { get; set; }
Valor da Propriedade
Exemplos
Este exemplo demonstra o uso de Aspose.Imaging.Cache```csharp [C#]
// Por padrão, a pasta de cache é configurada para o diretório temporário local do usuário.
// Você também pode especificar outra pasta de cache que não seja a padrão, como a seguinte:
// Cache.CacheFolder = @"D:\\MyTemp";
// O modo automático é flexível e eficiente
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// O valor padrão é 0, o que significa que não há limite superior
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabyte
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabyte
// Não é recomendado alterar a propriedade a seguir, pois isso pode afetar significativamente o desempenho
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// A qualquer momento, você pode verificar quantos bytes estão atualmente alocados para memória ou disco
// cache examinando as seguintes propriedades
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Realize algum processamento de imagem como abaixo
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);
// após executar o código acima, serão alocados 40000 bytes na memória.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// As propriedades de alocação podem ser usadas para verificar se todos os objetos Aspose.Imaging foram devidamente descartados.
// Caso você tenha esquecido de chamar dispose em algum objeto, os valores do cache serão diferentes de 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
#### Observações
A realocação exata realizará a realocação de memória adicional apenas até o limite superior especificado.
Ao passar o limite superior para a memória em memória durante a realocação, os dados em cache serão copiados para o disco, se possível.
Ao passar o limite superior para a memória em disco durante a realocação, a exceção apropriada é lançada.
O desempenho deve ser maior se esta opção estiver desativada, pois nenhuma cópia adicional será realizada, se possível,
no entanto, isso também pode levar a ultrapassar os limites superiores especificados para memória ou disco.
### <a id="Aspose_Imaging_Cache_MaxDiskSpaceForCache"></a> MaxDiskSpaceForCache
Obtém ou define o espaço máximo disponível em disco para cache. O valor especificado é a contagem de megabytes.
```csharp
public static int MaxDiskSpaceForCache { get; set; }
Valor da Propriedade
Exemplos
Este exemplo demonstra o uso de Aspose.Imaging.Cache```csharp [C#]
// Por padrão, a pasta de cache é configurada para o diretório temporário local do usuário.
// Você também pode especificar outra pasta de cache que não seja a padrão, como a seguinte:
// Cache.CacheFolder = @"D:\\MyTemp";
// O modo automático é flexível e eficiente
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// O valor padrão é 0, o que significa que não há limite superior
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabyte
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabyte
// Não é recomendado alterar a propriedade a seguir, pois isso pode afetar significativamente o desempenho
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// A qualquer momento, você pode verificar quantos bytes estão atualmente alocados para memória ou disco
// cache examinando as seguintes propriedades
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Realize algum processamento de imagem como abaixo
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);
// após executar o código acima, serão alocados 40000 bytes na memória.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// As propriedades de alocação podem ser usadas para verificar se todos os objetos Aspose.Imaging foram devidamente descartados.
// Caso você tenha esquecido de chamar dispose em algum objeto, os valores do cache serão diferentes de 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
#### Observações
Um valor de 0 consumirá toda a memória disponível e servirá como sem limite superior.
### <a id="Aspose_Imaging_Cache_MaxMemoryForCache"></a> MaxMemoryForCache
Obtém ou define a memória máxima disponível para cache em memória. O valor especificado é a contagem de megabytes.
```csharp
public static int MaxMemoryForCache { get; set; }
Valor da Propriedade
Exemplos
Este exemplo demonstra o uso de Aspose.Imaging.Cache```csharp [C#]
// Por padrão, a pasta de cache é configurada para o diretório temporário local do usuário.
// Você também pode especificar outra pasta de cache que não seja a padrão, como a seguinte:
// Cache.CacheFolder = @"D:\\MyTemp";
// O modo automático é flexível e eficiente
Aspose.Imaging.Cache.CacheType = Aspose.Imaging.CacheType.Auto;
// O valor padrão é 0, o que significa que não há limite superior
Aspose.Imaging.Cache.MaxDiskSpaceForCache = 1073741824; // 1 gigabyte
Aspose.Imaging.Cache.MaxMemoryForCache = 1073741824; // 1 gigabyte
// Não é recomendado alterar a propriedade a seguir, pois isso pode afetar significativamente o desempenho
Aspose.Imaging.Cache.ExactReallocateOnly = false;
// A qualquer momento, você pode verificar quantos bytes estão atualmente alocados para memória ou disco
// cache examinando as seguintes propriedades
long l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
// Realize algum processamento de imagem como abaixo
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);
// após executar o código acima, serão alocados 40000 bytes na memória.
long diskBytes = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
long memoryBytes = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
}
// As propriedades de alocação podem ser usadas para verificar se todos os objetos Aspose.Imaging foram devidamente descartados.
// Caso você tenha esquecido de chamar dispose em algum objeto, os valores do cache serão diferentes de 0.
l1 = Aspose.Imaging.Cache.AllocatedDiskBytesCount;
l2 = Aspose.Imaging.Cache.AllocatedMemoryBytesCount;
#### Observações
Um valor de 0 consumirá toda a memória disponível e servirá como sem limite superior.
## Métodos
### <a id="Aspose_Imaging_Cache_SetDefaults"></a> SetDefaults\(\)
Define as configurações de Aspose.Imaging.Cache para os padrões.
```csharp
public static void SetDefaults()