Partisi memori Java:
Dalam alokasi memori Java, Java membagi memori menjadi: area metode, heap, tumpukan mesin virtual, tumpukan metode lokal, dan penghitung program. Area metode dan tumpukan digunakan bersama oleh semua thread, sedangkan tumpukan mesin virtual, tumpukan metode lokal, dan penghitung program diisolasi pada thread. Setiap area memiliki waktu pembuatan dan penghancurannya masing-masing.
Penghitung program:
Ini digunakan sebagai indikator nomor baris dari byte yang dieksekusi oleh thread saat ini. Multithreading Java diimplementasikan dengan mengganti thread secara bergantian dan mengalokasikan waktu eksekusi prosesor. Oleh karena itu, agar setiap thread kembali ke posisi yang benar setelah peralihan, setiap thread memerlukan penghitung program independen.
Tumpukan mesin virtual Java:
Ketika masing-masing dijalankan, bingkai tumpukan akan dibuat pada saat yang sama untuk menyimpan tabel variabel lokal, tumpukan operan, tautan dinamis, keluar metode, dan informasi lainnya. Tumpukan memori virtual inilah yang sering kita sebut dengan "tumpukan". Memori yang diperlukan untuk tabel variabel lokal dialokasikan pada waktu kompilasi.
Tumpukan metode lokal:
Mirip dengan tumpukan mesin virtual, perbedaannya adalah tumpukan mesin virtual menjalankan layanan metode Java untuk mesin virtual, sedangkan tumpukan metode lokal melayani mesin virtual menggunakan metode Asli.
tumpukan Java:
Dibagikan oleh semua program dan dibuat saat mesin virtual dimulai. Area memori ini digunakan untuk menyimpan instance objek. Menurut peraturan mesin virtual Java, heap Java dapat berada dalam ruang memori yang terputus secara fisik selama secara logis kontinu.
Area metode:
Sama seperti heap, dibagikan antar thread. Fungsinya untuk menyimpan data seperti informasi kelas, konstanta, variabel statis, kode yang dikompilasi oleh compiler just-in-time, dll yang telah dimuat oleh mesin virtual.
Kumpulan konstan waktu proses:
Merupakan bagian dari area metode. Fungsinya untuk menyimpan berbagai referensi literal dan simbol yang dihasilkan selama kompilasi.