StringFreezingAttribute Classe

Definição

Preterido. Congela um literal de cadeia de caracteres ao criar imagens nativas usando o Ngen.exe (Gerador de Imagem Nativa). Essa classe não pode ser herdada.

public ref class StringFreezingAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)]
[System.Serializable]
public sealed class StringFreezingAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)]
public sealed class StringFreezingAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)>]
[<System.Serializable>]
type StringFreezingAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)>]
type StringFreezingAttribute = class
    inherit Attribute
Public NotInheritable Class StringFreezingAttribute
Inherits Attribute
Herança
StringFreezingAttribute
Atributos

Exemplos

O exemplo de código a seguir demonstra como aplicar o StringFreezingAttribute assembly a um assembly.

using System;
using System.Runtime.CompilerServices;

[assembly :StringFreezingAttribute()]

class Program
{

    string frozenString = "This is a frozen string after Ngen is run.";

    static void Main(string[] args)
    {

        Console.WriteLine("The StringFreezingAttribute attribute was applied.");
    }
}
Imports System.Runtime.CompilerServices

<Assembly: StringFreezingAttribute()> 

Module Program

    Dim frozenString = "This is a frozen string after Ngen is run."

    Sub Main(ByVal args() As String)
        Console.WriteLine("The FixedAddressValueTypeAttribute attribute was applied.")
    End Sub


End Module

Comentários

Note

A classe StringFreezingAttribute foi preterida no .NET Framework versão 3.5 Service Pack 1 (SP1) e versões posteriores.

Uma cadeia de caracteres congelada é um objeto literal de cadeia de caracteres compatível com o heap gerenciado e foi serializado em uma imagem nativa pelo Ngen.exe (Gerador de Imagem Nativa). O StringFreezingAttribute atributo permite otimizar seu código alocando previamente literais de cadeia de caracteres durante a geração de imagem nativa em vez de em tempo de execução. Depois que um literal de cadeia de caracteres tiver sido congelado, o código pode simplesmente se referir à cadeia de caracteres usando o endereço na imagem nativa.

O StringFreezingAttribute valor deve ser aplicado no nível do assembly.

Observe que o CLR (Common Language Runtime) não pode descarregar nenhuma imagem nativa que tenha uma cadeia de caracteres congelada porque qualquer objeto no heap pode se referir à cadeia de caracteres congelada. Portanto, você deve usar a StringFreezingAttribute classe somente nos casos em que a imagem nativa que contém a cadeia de caracteres congelada seja muito compartilhada.

Construtores

Nome Description
StringFreezingAttribute()

Inicializa uma nova instância da classe StringFreezingAttribute.

Propriedades

Nome Description
TypeId

Quando implementado em uma classe derivada, obtém um identificador exclusivo para esse Attribute.

(Herdado de Attribute)

Métodos

Nome Description
Equals(Object)

Retorna um valor que indica se essa instância é igual a um objeto especificado.

(Herdado de Attribute)
GetHashCode()

Devolve o código hash para esta instância.

(Herdado de Attribute)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
IsDefaultAttribute()

Quando substituído em uma classe derivada, indica se o valor dessa instância é o valor padrão para a classe derivada.

(Herdado de Attribute)
Match(Object)

Quando substituído em uma classe derivada, retorna um valor que indica se essa instância é igual a um objeto especificado.

(Herdado de Attribute)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

Nome Description
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição.

(Herdado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera as informações de tipo de um objeto, que podem ser usadas para obter as informações de tipo de uma interface.

(Herdado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1).

(Herdado de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fornece acesso a propriedades e métodos expostos por um objeto.

(Herdado de Attribute)

Aplica-se a