為了釋放和重置非託管資源(例如與資料庫、檔案等的連接),並執行記憶體清理,我們使用 C# 中名為 dispose of () 的函數。它必須實作 IDisposable 接口,並且必須由使用者明確調用,而不是由垃圾收集器調用。使用 dispose of () 方法時的效能成本為空,因為 dispose() 方法會立即清理內存,從而優化內存,因此使用此函數來清理非託管資源(例如文件和資料庫連接)非常重要強烈建議。
文法:
dispose();
dispose() 函數的工作原理如下:
讓我們討論一下 C# 物件處理的範例。
C# 程式透過實作 IDisposable 介面並明確呼叫 dispose() 函數來顯示對應的訊息來示範 dispose() 函數的用法:
代碼:
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(); } }
輸出:
在上面的程式中,定義了一個名為示範類別的類,它實作了 IDidposable 介面。然後在實作IDisposable介面的示範類別中定義dispose()方法來執行所需資源的釋放。然後定義另一個名為 demofordispose 的類,在其中呼叫 main 方法。在 main 方法中,建立了演示類別的實例。然後在演示類別的實例上呼叫 dispose of () 函數,將其從記憶體中釋放,並顯示相應的訊息。
C# 程式透過實作 IDisposable 介面並明確呼叫 dispose of () 函數來顯示對應的訊息來示範 dispose of () 函數的用法:
代碼:
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(); } }
輸出:
在上面的程式中,定義了一個名為示範類別的類,它實作了 IDidposable 介面。然後在實作IDisposable介面的示範類別中定義dispose()方法來執行所需資源的釋放。然後定義另一個名為 demofordispose 的類,在其中呼叫 main 方法。在 main 方法中,建立了演示類別的實例。然後,在演示類別的實例上呼叫 dispose of () 函數,將其從記憶體中釋放,並顯示相應的訊息。
C# 程式透過實作 IDisposable 介面並明確呼叫 dispose() 函數來顯示對應的訊息來示範 dispose() 函數的用法:
代碼:
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(); } }
輸出:
在上面的程式中,定義了一個名為示範類別的類,它實作了 IDidposable 介面。然後在實作IDisposable介面的示範類別中定義dispose()方法來執行所需資源的釋放。然後定義另一個名為 demofordispose 的類,在其中呼叫 main 方法。在 main 方法中,建立了演示類別的實例。然後在演示類別的實例上呼叫 dispose() 函數,將其從記憶體中釋放,並顯示對應的訊息。
在本文中,我們透過程式設計範例及其輸出,透過 C# 中 dispose of () 函數的定義、語法和工作原理了解了 C# 中 dispose of () 函數的概念。
以上是C# 對象處置的詳細內容。更多資訊請關注PHP中文網其他相關文章!