หน่วยความจำ Java Heapเป็นส่วนหนึ่งของหน่วยความจำที่จัดสรรให้กับ JVM โดยระบบปฏิบัติการ
วัตถุที่อยู่ในพื้นที่ที่เรียกว่าฮีป ฮีปถูกสร้างขึ้นเมื่อ JVM เริ่มทำงานและอาจเพิ่มหรือลดขนาดขณะที่แอ็พพลิเคชันรัน เมื่อฮีปเต็มแล้วจะมีการรวบรวมขยะ
คุณสามารถค้นหารายละเอียดเพิ่มเติมเกี่ยวกับEden Space, Survivor Space, Tenured Space และ Permanent Generation ได้ในคำถามด้านล่าง:
รุ่นเยาว์อายุและการดัด
PermGen ถูกแทนที่ด้วย Metaspace ตั้งแต่ Java 8 รีลีส
เกี่ยวกับคำค้นหาของคุณ:
- Eden Space, Survivor Space, Tenured Space เป็นส่วนหนึ่งของหน่วยความจำกอง
- Metaspace และ Code Cache เป็นส่วนหนึ่งของหน่วยความจำที่ไม่ใช่ฮีป
Codecache: Java Virtual Machine (JVM) สร้างโค้ดเนทีฟและเก็บไว้ในพื้นที่หน่วยความจำที่เรียกว่า codecache JVM สร้างโค้ดเนทีฟด้วยเหตุผลหลายประการรวมถึงสำหรับ interpreter loop ที่สร้างขึ้นแบบไดนามิก, สเต็ป Java Native Interface (JNI) และสำหรับเมธอด Java ที่คอมไพล์เป็นโค้ดเนทีฟโดยคอมไพเลอร์ just-in-time (JIT) JIT นั้นเป็นผู้ใช้ codecache มากที่สุด