Usul maydoni va PermGen

Men HotSpot JVM xotira tuzilishini tushunishga harakat qilardim va "Usul maydoni" va "PermGen" bo'sh joyining ikkita atamasi bilan chalkashdim. Men havola qilgan hujjatlarda aytilishicha, Method Area bayt kodini o'z ichiga olgan sinflar va usullarning ta'rifini o'z ichiga oladi. Ba'zi boshqa hujjatlar ular PermGen maydonida saqlanganligini aytishadi.

Xo'sh, bu ikki xotira sohasibir xil degan xulosaga kelishim mumkinmi?


person Ratheesh P Kumar    schedule 01.02.2012    source manba
comment
Yangilash: Java8 dan so'zlar bo'yicha PermGen yo'q va barcha sinf, usul, string stajyorlari Metaspace-da saqlanadi. Havola: karunsubramanian.com/websphere/   -  person Ramesh Papaganti    schedule 12.01.2018


Javoblar (4)


Java xotira turlari va ixtiyoriy ravishda ushbu hujjatni ko'rib chiqing. Java-dagi Axlat yig'ish haqida. Ikkinchisi juda batafsil va ikkalasi ham foydali.

Aslida Usul maydoni Doimiy avlodning bir qismidir:

Muvaffaqiyatli avlod bilan chambarchas bog'liq bo'lgan uchinchi avlod doimiy avloddir. Doimiy avlod o'ziga xosdir, chunki u Java tili darajasida ekvivalentga ega bo'lmagan ob'ektlarni tavsiflash uchun virtual mashina tomonidan zarur bo'lgan ma'lumotlarni saqlaydi. Masalan, sinflar va usullarni tavsiflovchi ob'ektlar doimiy avlodda saqlanadi.

person xea    schedule 01.02.2012

Siz "Usul maydoni" ni "PermGen" ning kichik to'plami deb hisoblashingiz mumkin, chunki doimiy avlod maydoni sinf ta'riflarini o'z ichiga oladi, lekin u o'rnatilgan Stringlar va boshqa ma'lumotlar bitlarini ham o'z ichiga oladi.

person Ernest Friedman-Hill    schedule 01.02.2012
comment
Ammo bu nafaqat PermGen kichik to'plami, balki PermGen maydonidan tashqarida Metod maydoni bo'lishi mumkin, to'g'rimi? - person falsarella; 01.02.2012
comment
Yo'q, men tushunganimdek, barcha ma'lumotlar PermGen-ga kiradi. - person Ernest Friedman-Hill; 01.02.2012
comment
Yangilash: Interned satrlar Java 7 dan boshlab asosiy to'plamda saqlanadi. oracle.com/technetwork/java/javase/ - person Rasika Perera; 21.09.2014
comment
Yangilash: Java8 dan so'zlar bo'yicha PermGen yo'q va barcha sinf, usul, string stajyorlari Metaspace-da saqlanadi. Havola: karunsubramanian.com/websphere/ - person Ramesh Papaganti; 12.01.2018

Metod Area, asosan, sinf skeletini saqlaydigan Stack kabi yig'ilmagan bo'shliqdir. skeletga qiymatlar, konstruktorlar va boshqalarga ega statik o'zgaruvchilar kiradi. Ko'zgu operatsiyasi ushbu xotira maydonida amalga oshiriladi. Perm - bu joriy bajaruvchi sinfning ikkilik kodini saqlaydigan uyaga parallel xotira maydoni.

person Pinkesh Sharma    schedule 06.07.2013

Men juda yaxshi fikr beradi. boshqa joydan topa olmadim

Ko'pchilik Heap va Stack haqida ekvivalent va asosiy komponentlar sifatida gapirishadi, ammo Tai ajoyib tasvirlar bilan tasvirni mukammal tushuntirishni beradi.

Tahrirlash: havola endi ishlamaydi :(

person killjoy    schedule 31.03.2015