Untuk membebaskan dan menetapkan semula sumber yang tidak diurus seperti sambungan ke pangkalan data, fail, dsb., dan untuk melakukan pembersihan memori, kami menggunakan fungsi yang dipanggil dispose of () function dalam C#. Ia mesti melaksanakan antara muka IDisposable dan mesti dipanggil oleh pengguna secara eksplisit dan bukan oleh pemungut sampah. Kos berkenaan dengan prestasi semasa menggunakan kaedah buang () adalah batal kerana kaedah buang() membersihkan memori serta-merta yang mengoptimumkan memori dan oleh itu penggunaan fungsi ini untuk membersihkan sumber yang tidak terurus seperti fail dan sambungan ke pangkalan data adalah sangat sangat disyorkan.
Sintaks:
dispose();
Kerja fungsi dispose() adalah seperti berikut:
Mari kita bincangkan contoh C# Object Dispose.
Program C# untuk menunjukkan penggunaan fungsi dispose() dengan melaksanakan antara muka IDisposable dan memanggil fungsi dispose() secara eksplisit yang memaparkan mesej yang sesuai:
Kod:
using System; using System.IO; using System; //a class called demonstratingclass is defined and it implements the IDidposable interface public class demonstratingclass : IDisposable { //the dispose() method is defined to to perform the release of the required resources public void Dispose() { Console.WriteLine("The dispose() function has been called and the resources have been released!"); } } //another class called demofordispose is defined public class demofordispose { //main method is called public static void Main() { //an instance of the demonstratingclass is created var result = new demonstratingclass(); //the dispose() method is called on the instance of the demonstratingclass to release it from the memory result.Dispose(); } }
Output:
Dalam program di atas, kelas yang dipanggil kelas demonstrasi ditakrifkan dan ia melaksanakan antara muka IDidposable. Kemudian kaedah buang () ditakrifkan dalam kelas yang menunjukkan yang melaksanakan antara muka IDisposable untuk melaksanakan pelepasan sumber yang diperlukan. Kemudian kelas lain yang dipanggil demofordispose ditakrifkan di mana kaedah utama dipanggil. Dalam kaedah utama, contoh kelas yang menunjukkan dibuat. Kemudian fungsi buang () dipanggil pada contoh kelas yang menunjukkan untuk melepaskannya daripada ingatan dan mesej yang sesuai dipaparkan.
Program C# untuk menunjukkan penggunaan fungsi buang () dengan melaksanakan antara muka IDisposable dan memanggil fungsi buang () secara eksplisit yang memaparkan mesej yang sesuai:
Kod:
using System; //a class called demonstratingclass is defined and it implements the IDidposable interface public class demonstratingclass : IDisposable { //the dispose() method is defined to to perform the release of the required resources public void Dispose() { Console.WriteLine( "The resources have been released because the dispose function is called upon them"); } } //another class called demofordispose is defined public class demofordispose { //main method is called public static void Main() { //an instance of the demonstratingclass is created var check = new demonstratingclass(); //the dispose() method is called on the instance of the demonstratingclass to release it from the memory check.Dispose(); } }
Output:
Dalam program di atas, kelas yang dipanggil kelas demonstrasi ditakrifkan dan ia melaksanakan antara muka IDidposable. Kemudian kaedah buang () ditakrifkan dalam kelas yang menunjukkan yang melaksanakan antara muka IDisposable untuk melaksanakan pelepasan sumber yang diperlukan. Kemudian kelas lain yang dipanggil demofordispose ditakrifkan di mana kaedah utama dipanggil. Dalam kaedah utama, contoh kelas demonstrasi dicipta. Kemudian fungsi buang () dipanggil pada instance demonstratingclass untuk melepaskannya daripada memori dan mesej yang sesuai dipaparkan.
Program C# untuk menunjukkan penggunaan fungsi dispose() dengan melaksanakan antara muka IDisposable dan memanggil fungsi dispose() secara eksplisit yang memaparkan mesej yang sesuai:
Kod:
using System; //a class called demonstratingclass is defined and it implements the IDidposable interface public class demonstratingclass : IDisposable { //the dispose() method is defined to to perform the release of the required resources public void Dispose() { Console.WriteLine("The dispose() function is releasing the specified resources freeing them from the memory."); } } //another class called demofordispose is defined public class demofordispose { //main method is called public static void Main() { //an instance of the demonstratingclass is created var check1 = new demonstratingclass(); //the dispose() method is called on the instance of the demonstratingclass to release it from the memory check1.Dispose(); } }
Output:
Dalam program di atas, kelas yang dipanggil kelas demonstrasi ditakrifkan dan ia melaksanakan antara muka IDidposable. Kemudian kaedah buang () ditakrifkan dalam kelas yang menunjukkan yang melaksanakan antara muka IDisposable untuk melaksanakan pelepasan sumber yang diperlukan. Kemudian kelas lain yang dipanggil demofordispose ditakrifkan di mana kaedah utama dipanggil. Dalam kaedah utama, contoh kelas yang menunjukkan dibuat. Kemudian fungsi dispose() dipanggil pada contoh kelas yang menunjukkan untuk melepaskannya daripada memori dan mesej yang sesuai dipaparkan.
Dalam artikel ini, kami telah mempelajari konsep melupuskan () fungsi dalam C# melalui takrifan, sintaks dan kerja melupuskan () fungsi dalam C# melalui contoh pengaturcaraan dan outputnya.
Atas ialah kandungan terperinci C# Object Dispose. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!