StringFreezingAttribute Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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)]
public sealed class StringFreezingAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)]
[System.Serializable]
public sealed class StringFreezingAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)>]
type StringFreezingAttribute = class
inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)>]
[<System.Serializable>]
type StringFreezingAttribute = class
inherit Attribute
Public NotInheritable Class StringFreezingAttribute
Inherits Attribute
- Herança
- Atributos
Exemplos
O exemplo de código a seguir demonstra como aplicar o StringFreezingAttribute 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
Observação
A StringFreezingAttribute classe 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 pré-alocando 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 for congelado, o código poderá simplesmente se referir à cadeia de caracteres usando o endereço na imagem nativa.
O StringFreezingAttribute 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
StringFreezingAttribute() |
Inicializa uma nova instância da classe StringFreezingAttribute. |
Propriedades
TypeId |
Quando implementado em uma classe derivada, obtém um identificador exclusivo para este Attribute. (Herdado de Attribute) |
Métodos
Equals(Object) |
Retorna um valor que indica se essa instância é igual a um objeto especificado. (Herdado de Attribute) |
GetHashCode() |
Retorna o código hash para a 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 Object atual. (Herdado de Object) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
_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 para um objeto, que pode ser usado para obter as informações de tipo para 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) |