由於垃圾收集在後台偶爾運行,
演示並不容易。然而,一種方法是使用
使用finalize()方法。請記住,當物件即將被回收時,finalize() 會被呼叫。正如所解釋的,物件不一定會在不再需要時立即回收。相反,垃圾收集器會等待,直到它可以有效地執行其收集,通常是在有許多未使用的物件時。
因此,為了透過 Finalize() 方法來示範垃圾收集,我們必須
創建和銷毀各種物件 - 這正是我們在這個專案中要做的。
1 建立一個名為 Finalize.java 的新檔案。
2 建立FDemo類別:
建構子將實例變數 x 設定為已知值
的。在此範例中,x 用作物件 ID。方法
Finalize() 在物件被回收時顯示 x 的值。特別令人感興趣的是generator()。此方法建立並立即丟棄 FDemo 物件。您將在下一步中看到它是如何使用的。
3 建立 Finalize 類別:
該類別會建立一個名為 ob 的初始 FDemo 物件。然後使用
ob,它透過呼叫ob中的generator()創建了100,000個物件。結果,創建並丟棄了 100,000 個物件。在
中間的不同時間點 過程中,將會發生垃圾收集。許多因素會影響確切的頻率或時間,例如初始可用記憶體量和作業系統。然而,在某些時候您將開始看到由finalize()產生的訊息。如果看不到它們,請嘗試透過增加 for 迴圈中的計數來增加產生的物件數量。
以上是試試這個:垃圾收集和終止的詳細內容。更多資訊請關注PHP中文網其他相關文章!