Pengumpulan sampah diperlukan dalam berbagai keadaan. Manajer memori di dalam sebuah sistem operasi harus melaksanakan operasi pengumpulan sampah seiring dengan dilakukannya pengalokasian dan pembebasan ruang memori. Manajer file melaksanakan pengumpulan sampah seiring dengan disimpan dan dihapusnya file-file ke dan dari dalam sistem penyimpanan data massal. Lebih dari itu, proses apapun yang bekerja dibawah kontrol dispatcher boleh jadi harus melakukan pengumpulan sampah didalam ruang memori yang dialokasikan kepadanya.
Pengumpulan sampah menyembunyikan sejumlah permasalahan. Dalam kasus struktur data berhubungan, setiap kali sebuah pointer yang merujuk ke sebuah item data mengalami perubahan, pengumpul sampah harus memutuskan apakah ruang penyimpanan data yang sebelumnya dihuni pointer tersebut akan diambil kembali. Permasalahan ini menjadi sangat rumit didalam struktur-struktur data kompleks yang melibatkan banyak jalur pointer. Rutin-rutin pengambilan data yang dibuat secara kurang akurat dapat mengakibatkan hilangnya data atau ketidakefisienan dalam penggunaan ruang penyimpanan data. Secara spesifik, apabila pengumpulan sampah gagal melakukan pengambilan kembali ruang penyimpanan yang tak terpakai, ruang tersebut perlahan akan menyusut dan hilang, sebuah fenomena yang disebut dengan kebocoran memori (memory leak).
0 komentar
Posting Komentar