簡體   English   中英

將對象恢復為默認狀態

[英]restoring object to default state

由於大量的對象創建,我正在應用一個我們面臨問題的對象池。 對於相同的我需要一個clear()方法來清理或恢復對象到每個對象的默認狀態,就好像它是一個新創建的對象。 可以在不手動調用每個方法設置為默認值的情況下完成此操作,因為如果開發人員在更改bean class時忘記更新clear() ,則會導致錯誤。

首先,垃圾收集器會自動收集所有不需要的對象。

您必須使用以下方法請求垃圾收集器的另一個選項

System.gc();

要么

Runtime.getRuntime().gc();

您可以Override finalize method bean類中的Override finalize method

protected void finalize() throws Throwable
{
//Keep some resource closing operations here
}

對於你的Java案例,肯定沒有任何這樣的准備好的決定。 如果你需要返回池的工作人員處於初始狀態,那么你必須自己做,我的意思是你需要write方法,它將所有需要的對象變量放在初始值中。

同時我會說你在這里避免大量的對象創建是不必要的,直到你會在profiler中看到這個特定事件的重要時間。 我還會說,由於你的類的結構復雜(因為你不想自己編寫這個干凈的方法,我猜 - 它們很復雜) - 清除這些對象它們自己將花費相當的時間來創建這個對象。 在大多數情況下, Java池用於非常昂貴的對象,例如線程或數據庫連接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM