gc什么時候落地應(yīng)用 怎么在面試時回答Java垃圾回收機制(GC)相關(guān)問題?
怎么在面試時回答Java垃圾回收機制(GC)相關(guān)問題?讓我給你一個主意1。垃圾收集算法的基本原理、優(yōu)缺點、適用性2。實現(xiàn)原理,優(yōu)缺點,JDK中垃圾收集器的適用性,以及您對中間內(nèi)存模型的理解3。介紹工作
怎么在面試時回答Java垃圾回收機制(GC)相關(guān)問題?
讓我給你一個主意
1。垃圾收集算法的基本原理、優(yōu)缺點、適用性
2。實現(xiàn)原理,優(yōu)缺點,JDK中垃圾收集器的適用性,以及您對中間內(nèi)存模型的理解
3。介紹工作中遇到的相關(guān)問題、思考、解決方法
4。延伸:您對G1、ZGC等尖端技術(shù)的了解
我們已經(jīng)在線好幾次了。Net核心項目基本上都是docker。凈核心2/3。說實話。netcore的GC非常好。基本上,你不需要像Java那樣做很多優(yōu)化。所以沒有多少研究是正常的。換句話說,如果一個GC需要做很多優(yōu)化,那么它肯定不是一個好的GC。當(dāng)然,平時編程、常用的非托管對象處理等都必須掌握。
Net Core已經(jīng)開源好幾年了, 為什么不像JVM那樣很多人研究和調(diào)優(yōu)其GC算法?
作為一名程序員,我已經(jīng)出版了很多Java編程書籍,所以讓我來回答這個問題。
隨著互聯(lián)網(wǎng)的發(fā)展,Java語言自身的生態(tài)系統(tǒng)不斷完善,應(yīng)用邊界不斷擴大。目前廣泛應(yīng)用于web開發(fā)、大數(shù)據(jù)開發(fā)、移動終端開發(fā)等領(lǐng)域??梢哉f,不同的應(yīng)用方向也需要有不同的知識結(jié)構(gòu),因此很難掌握J(rèn)ava。
Java語言本身的組成分為兩部分,一部分是Java虛擬機,另一部分是Java語言本身的語法。根據(jù)Java語法要求編寫的程序需要通過Java虛擬機進行加載、驗證、編譯和運行,Java虛擬機的作用相當(dāng)于Java運行環(huán)境(container)。它需要完成很多操作,包括代碼安全、垃圾處理、事件處理、資源管理等。因此,精通java開發(fā)一方面需要清晰的java語法,另一方面需要了解java虛擬機的運行機制。
對于初學(xué)者來說,學(xué)習(xí)java編程從學(xué)習(xí)java語法開始,然后學(xué)習(xí)java web開發(fā)、數(shù)據(jù)庫開發(fā)、分布式開發(fā)等。這個過程通常是大多數(shù)學(xué)習(xí)者的學(xué)習(xí)路線。難點在于對java面向?qū)ο蟾拍畹睦斫?,即對各種“抽象”的理解。這一部分雖然有一定的難度,但大多數(shù)學(xué)習(xí)者都是能夠?qū)W習(xí)的,差異往往在于學(xué)習(xí)時間上。
對于從事平臺開發(fā)的研發(fā)級程序員來說,還需要系統(tǒng)地學(xué)習(xí)Java虛擬機的內(nèi)部機制。通過深入了解Java虛擬機的組成,可以輔助平臺產(chǎn)品的研發(fā),注重性能的提高。通常,我們需要了解Java虛擬機的體系結(jié)構(gòu)和核心算法,這是比較困難的。當(dāng)然,如果您想了解Java虛擬機的整體結(jié)構(gòu),通常需要閱讀大量的源代碼。