Class Cache

Class Cache

Namespace: Aspose.Imaging
Assembly: Aspose.Imaging.dll (25.2.0)

Contém configurações de cache.

public static class Cache

Herança

objectCache

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

long

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 &lt; 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

long

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 &lt; 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

string

CacheType

Obtém ou define o esquema de cache utilizado.

public static CacheType CacheType { get; set; }

Valor da Propriedade

CacheType

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 &lt; 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

bool

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 &lt; 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

int

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 &lt; 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

int

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 &lt; 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()
 Português