Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

เมธอด CharEnumerator.Dispose() ใน C#

ภาพรวม

เมธอด CharEnumerator.Dispose() ใน C# ใช้เพื่อปล่อยทรัพยากรทั้งหมดที่ถูกใช้งานโดยอินสแตนซ์ปัจจุบันของคลาส CharEnumerator วิธีนี้มีความสำคัญต่อการจัดการหน่วยความจำที่มีประสิทธิภาพ โดยเฉพาะเมื่อทำงานกับตัวแปรนับอักขระในลูปหรือการประมวลผลข้อความขนาดใหญ่

ไวยากรณ์

public void Dispose();

ตัวอย่างการใช้งาน

ตัวอย่างต่อไปนี้แสดงการใช้งาน CharEnumerator.Dispose() เพื่อทำลายอินสแตนซ์หลังใช้งานเสร็จสิ้น:

using System;

public class Demo
{
    public static void Main()
    {
        string strNum = "356";
        CharEnumerator ch = strNum.GetEnumerator();
        
        while (ch.MoveNext())
            Console.Write(ch.Current + " ");
        
        // ปล่อยทรัพยากรที่ใช้โดย CharEnumerator
        ch.Dispose();
        
        // บรรทัดด้านล่างจะทำให้เกิดข้อผิดพลาด เนื่องจากออบเจ็กต์ถูกทำลายแล้ว
        // Console.WriteLine(ch.Current);
    }
}

ผลลัพธ์

โค้ดข้างต้นจะให้ผลลัพธ์ดังนี้:

3 5 6

ข้อสังเกตสำคัญ

  • ควรเรียก Dispose() เสมอเมื่อเสร็จสิ้นการใช้งาน CharEnumerator เพื่อป้องกันการรั่วไหลของหน่วยความจำ
  • หลังจากเรียก Dispose() แล้ว ไม่ควรเข้าถึงสมาชิกใดๆ ของอินสแตนซ์นั้นอีก
  • สามารถใช้คำสั่ง using เพื่อจัดการการทำลายอัตโนมัติได้เช่นกัน