在Java?編碼語言中,經常引用對象、字符串和變量,即使程序員不知道這些引用。這些引用直接與垃圾收集器通信,垃圾收集器是一個收集不需要的信息并將其丟棄,從而不再占用內存的函數。默認情況下,所有引用都是強引用和在沒有...
在Java?編碼語言中,經常引用對象、字符串和變量,即使程序員不知道這些引用。這些引用直接與垃圾收集器通信,垃圾收集器是一個收集不需要的信息并將其丟棄,從而不再占用內存的函數。默認情況下,所有引用都是強引用和在沒有任何編碼的情況下被設置,這意味著它們不會被釋放到垃圾回收器中。軟引用允許數據被丟棄。它是所有非強引用的中級引用。每當程序員使用Java?進行任何操作時,都要手持計算機,不管是生成字符串還是創建復雜函數,都會生成引用。程序員不必編寫引用命令;引用是自動生成的,默認情況下是強引用。這意味著引用中的數據不能被丟棄,因為它們鏈接到整個腳本所需的整數對象。但是,有些數據需要丟棄,因為它們會占用大量內存。例如,如果程序員構建了一個使用序列號的腳本,或者收集或創建了其他臨時信息,那么保留這些信息就變成了有害的。Java?程序會拒絕丟棄信息,即使不需要,腳本也需要越來越多的內存才能運行。通過將字符串或節指定為軟引用(需要將其放入編碼中),這會告訴垃圾回收器數據可以釋放。一旦釋放,字符串或節將讀為“null”。垃圾回收器根據其設置決定何時拋出數據。有三種非強引用:軟引用、弱引用和幻象引用。弱引用是最弱的,其數據被快速丟棄軟引用通常是在第二行內存中被自動使用的。如果軟引用的數據在第二行中被自動使用,那么在第二次引用時,最好的方法是將其丟棄在內存中垃圾回收器將首先銷毀所有弱引用,當所有弱引用都不存在時,如果內存仍需要清除數據,則軟引用將被丟棄
-
發表于 2020-08-07 06:29
- 閱讀 ( 489 )
- 分類:電腦網絡