Bagikan melalui


StringFreezingAttribute Kelas

Definisi

Dihentikan. Membekukan string literal saat membuat gambar asli menggunakan Ngen.exe (Native Image Generator). Kelas ini tidak dapat diwariskan.

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
Warisan
StringFreezingAttribute
Atribut

Contoh

Contoh kode berikut menunjukkan cara menerapkan ke StringFreezingAttribute 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

Keterangan

Catatan

Kelas StringFreezingAttribute tidak digunakan lagi dalam .NET Framework versi 3.5 Paket Layanan 1 (SP1) dan versi yang lebih baru.

String beku adalah objek literal string yang kompatibel dengan tumpukan terkelola dan telah diserialisasikan ke dalam gambar asli oleh Ngen.exe (Native Image Generator). Atribut ini StringFreezingAttribute memungkinkan Anda mengoptimalkan kode dengan mengalokasikan literal string sebelumnya selama pembuatan gambar asli, bukan pada durasi. Setelah string literal dibekukan, kode cukup merujuk ke string menggunakan alamat dalam gambar asli.

StringFreezingAttribute harus diterapkan pada tingkat perakitan.

Perhatikan bahwa runtime bahasa umum (CLR) tidak dapat membongkar gambar asli apa pun yang memiliki string beku karena objek apa pun dalam tumpukan mungkin merujuk ke string yang dibekukan. Oleh karena itu, Anda harus menggunakan StringFreezingAttribute kelas hanya dalam kasus di mana gambar asli yang berisi string beku dibagikan dengan berat.

Konstruktor

StringFreezingAttribute()

Menginisialisasi instans baru kelas StringFreezingAttribute.

Properti

TypeId

Ketika diimplementasikan di kelas turunan, mendapatkan pengidentifikasi unik untuk ini Attribute.

(Diperoleh dari Attribute)

Metode

Equals(Object)

Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
GetHashCode()

Mengembalikan kode hash untuk instans ini.

(Diperoleh dari Attribute)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
IsDefaultAttribute()

Ketika ditimpa di kelas turunan, menunjukkan apakah nilai instans ini adalah nilai default untuk kelas turunan.

(Diperoleh dari Attribute)
Match(Object)

Saat ditimpa di kelas turunan, mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Implementasi Antarmuka Eksplisit

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

Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Mengambil informasi jenis untuk objek, yang dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1).

(Diperoleh dari Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Menyediakan akses ke properti dan metode yang diekspos oleh objek.

(Diperoleh dari Attribute)

Berlaku untuk