Message-
From: Tjong, Andreas andreas.tj...@avrist.com
Sender: jug-indonesia@yahoogroups.com
Date: Tue, 18 May 2010 08:04:47
To: jug-indonesia@yahoogroups.comjug-indonesia@yahoogroups.com
Reply-To: jug-indonesia@yahoogroups.com
Subject: RE: [JUG-Indonesia] Re: Tentang System.gc()
Is this a joke
2010/5/18 Mirza Akhena mirken...@gmail.com
Awalnya, saya bikin thread ini karena ngeliat kode2 warisan dari sesepuh,
banyak object = null dan System.gc() - nya.
Setahu saya sih, ya kayak beberapa member milis disini juga bilang, gak perlu
manggil System.gc().
so, kesimpulan : gak perlu
2010/5/18 Endy Muhardin endy.muhar...@gmail.com
Mengenai me-null-kan object, saya juga hampir tidak pernah menggunakannya.
Trus gimana praktek coding yang baik?
Define object di scope sesempit mungkin.
Kalo bisa instance variable, jangan dibikin static.
Kalo bisa di dalam method, jangan
Saya setuju dengan poin2 di atas. Ga tau kenapa ada bbrp orang suka
define variable di scope yang luas. Misalnya bikin for loop dan butuh
variable ditaruhnya di luar for loop, padahal variable-nya cuma dipake
di for loop itu aja. Mungkin dipikirnya bisa save penggunaan memory.
mitos ternyata
Kalau aku bilang yah, GC punya JVM itu benar-benar pemalas tapi sok tahu
juga lho. :D
Pada saat memori sudah lumayan kritis, dia masih keliatan santai-santai
saja,
beresin sampah-sampah yang tidak penting, itupun kalau dia lagi mood.
Hingga suatu saat hampir kritis, baru dia berlagak sibuk dan
2010/5/18 Ifnu bima ifnub...@gmail.com
mitos ternyata bahwa define variable di dalam loop bisa memakan memory
lebih banyak ;)
Yang termakan mitos bukan cuma kita rakyat jelata.
PMD juga termakan mitos yang sama.
http://pmd.sourceforge.net/rules/optimizations.html
2010/5/19 Endy Muhardin endy.muhar...@gmail.com
2010/5/18 Ifnu bima ifnub...@gmail.com
mitos ternyata bahwa define variable di dalam loop bisa memakan memory
lebih banyak ;)
Yang termakan mitos bukan cuma kita rakyat jelata.
PMD juga termakan mitos yang sama.
Sekedar tambahan aja,
System.gc() memang bisa dipanggil, contohnya di berbagai aplikasi monitoring
JVM, contohnya di JDK jconsole ada button utk garbage collection.
Tapi sesuai rekomendasi Sun, System.gc() bukan ditujukan untuk dipanggil dari
aplikasi, karena gc sudah mempunyai optimisasinya
Is this a joke ?
One can not handle GC nor to force it to happen.
One can only suggest, Dear VM, please clean up your *ss, since it really
cluttering the space.
Call it 1000 times and the vm may choose to ignore your request, or it may
reschedule the GC or something else.
Lagian, GC itu
Menset object menjadi null bisa dibilang praktek yang baik, tapi saya sendiri
tidak pernah melakukan hal itu secara eksplisit. Untuk aplikasi database dengan
crud intensive saya biasanya menggantungkan object lifecycle ke framework.
Spring akan menangani view dan controller, dimana kebanyakan
Kalo dari pengalaman gw tuning2 JVM, throughput aplikasi (time spent on
processing vs time spent on gc) bisa ditune di parameter command line JVM nya
bro.
Kalo dari segi coding Java yah best practice nya setiap objek yang tidak
dipakai lebih baik dikasi null. Khususnya objek2 yang heavyweight
11 matches
Mail list logo