Perbedaan Antara Pengumpul Sampah dan Destructor

Perbedaan Utama - Pengumpul Sampah vs. Destructor
 

Sebagian besar bahasa pemrograman mendukung Pemrograman Berorientasi Objek. Ini adalah metodologi untuk membangun program atau perangkat lunak yang menggunakan objek. Objek dibuat menggunakan kelas, jadi itu adalah turunan dari kelas. Kelas memberikan deskripsi tentang apa objek harus terdiri dari. Saat membuat objek, memori dialokasikan untuk objek. Memori yang dialokasikan harus dirilis pada akhir pelaksanaan program untuk menggunakan kembali memori itu untuk beberapa objek lain. Bahasa pemrograman seperti Java dan C # .NET menggunakan pengumpul sampah untuk manajemen memori sementara bahasa seperti C dan C ++ memerlukan programmer untuk menangani manajemen memori. Jumlah memori yang diperlukan harus dialokasikan, dan pada akhir eksekusi, memori harus dilepaskan. Pengumpul dan penghancur sampah digunakan untuk melepaskan memori. Itu perbedaan utama antara pengumpul sampah dan destruktor adalah itu pengumpul sampah adalah perangkat lunak yang melakukan manajemen memori otomatis, sementara destruktor adalah metode khusus yang disebut oleh pengumpul sampah selama penghancuran objek..

ISI

1. Ikhtisar dan Perbedaan Utama
2. Apa itu Pengumpul Sampah
3. Apa itu Destructor
4. Kesamaan Antara Pengumpul Sampah dan Destructor
5. Perbandingan Berdampingan - Kolektor Sampah vs Destructor dalam Bentuk Tabular
6. Ringkasan

Apa itu Pengumpul Sampah?

Beberapa bahasa pemrograman memiliki lingkungan kode yang dikelola. Dalam bahasa pemrograman Java dan C #, manajemen memori otomatis dilakukan. Programmer tidak perlu membebaskan memori yang digunakan oleh objek. Lebih mudah bagi mereka untuk mengembangkan bahkan sistem yang kompleks karena manajemen memori dilakukan secara otomatis. Dalam bahasa pemrograman seperti C, C ++, dan Objective C, program harus melepaskan memori objek kembali ke sistem. Bahasa seperti Java dan C # dapat mengetahui objek yang tidak lagi digunakan. Setelah itu, mereka melepaskan memori yang dialokasikan untuk objek-objek itu kembali ke sistem.

Dalam bahasa pemrograman C # dan Java, jika ada kelas bernama Student, maka objek dapat dibuat menggunakan Student s = Student baru (); 'Baru' digunakan untuk membuat turunan dari kelas siswa. Ini mengalokasikan memori dalam sistem. Tanda 's' mengacu pada blok memori yang dialokasikan untuk objek itu. Lingkungan bahasa mengidentifikasi apakah objek sedang digunakan atau tidak. Jika tidak digunakan lebih lanjut, maka memori dilepaskan dan dapat digunakan nanti.

Gambar 01: Pengumpul dan Penghancur Sampah

Saat menjalankan program, blok memori dialokasikan dari kumpulan memori sistem. Kemudian program melakukan tugas menggunakan memori itu. Ketika eksekusi program selesai, pengumpul sampah mengetahui apakah blok memori yang dialokasikan untuk program itu penting atau tidak. Jika tidak diperlukan, blok memori tersebut dikembalikan ke sistem. Jadi, pengumpul sampah dapat melacak objek yang dibuat dalam program. Blok memori yang tidak lagi diperlukan dikirim kembali ke kumpulan memori sistem. Keuntungan utama dari proses ini adalah untuk mengkonfirmasi bahwa pemrogram tidak harus berkonsentrasi pada alokasi memori. Ini menyeimbangkan kinerja dan penggunaan memori.

Apa itu Destructor?

Destuktor adalah fungsi anggota khusus kelas. Itu dipanggil setiap kali objek keluar dari ruang lingkup. Objek dapat dihancurkan ketika fungsi berakhir atau di akhir pelaksanaan program. Destructor memiliki nama yang sama dengan nama kelas. Konstruktor digunakan untuk membuat objek. Itu dapat menerima parameter. Konstruktor juga dapat memiliki nilai balik. Tetapi dalam Destructor, tidak ada tipe pengembalian atau menerima parameter. Kelas hanya dapat terdiri dari satu destruktor. Destruktor disebut menggunakan tanda tilde. Jika nama kelasnya adalah Siswa, maka destruktornya adalah ~ Siswa () .

Pengumpul sampah mencari benda-benda yang tidak diperlukan lagi. Ini memastikan bahwa objek yang tidak lagi digunakan oleh program harus dihancurkan. Ia memanggil destructor untuk melepaskan memori dan untuk mengalokasikan sumber daya. Destructors berguna untuk melepaskan memori, menutup file, melepaskan sumber daya jaringan dan untuk menutup koneksi basis data. Di sebagian besar bahasa pemrograman, tidak perlu menulis destruktor karena pemulung memanggil konstruktor default sendiri. Jika pemrogram telah melakukan alokasi memori dinamis menggunakan pointer dalam bahasa seperti C ++, maka ia harus menulis destruktor untuk melepaskan memori sebelum objek dihancurkan.

Apa Persamaan Antara Pengumpul Sampah dan Penghancur?

  • Garbage Collector dan Destructor digunakan untuk melepaskan memori yang tidak lagi diperlukan untuk program.

Apa Perbedaan Antara Pengumpul Sampah dan Penghancur?

Kolektor Sampah vs Destructor

Pengumpul sampah adalah perangkat lunak yang melakukan manajemen memori otomatis. Destruktor adalah metode khusus yang disebut oleh pengumpul sampah selama penghancuran objek.
 Tipe
Seorang pengumpul sampah adalah sebuah perangkat lunak. Destruktor adalah metode.

Ringkasan - Pemulung vs. Destructor

Pengumpul sampah dan destruktor adalah dua istilah yang terkait dengan melepaskan memori. Artikel ini membahas perbedaan antara Pengumpul Sampah dan pemusnah. Perbedaan antara pengumpul sampah dan penghancur adalah bahwa pengumpul sampah adalah perangkat lunak yang melakukan manajemen memori otomatis, sedangkan penghancur adalah metode khusus yang disebut oleh pengumpul sampah selama penghancuran objek..

Unduh PDF dari Pengumpul Sampah vs Destructor

Anda dapat mengunduh versi PDF dari artikel ini dan menggunakannya untuk tujuan offline sesuai catatan kutipan. Silakan unduh versi PDF di sini: Perbedaan Antara Pengumpul Sampah dan Penghancur

Referensi:

1.lyndapodcast. “Bagaimana cara pengumpulan sampah C # | lynda. Com tutorial. " Cara kerja pengumpulan sampah C # | Tutorial lynda.Com, Solusi Pembelajaran LinkedIn, 19 September 2011. Tersedia di sini 
2. Kontraktor di C. ” GeeksforGeeks, 27 Mei 2017. Tersedia di sini  
3. Jain, Shubham. “Pengumpul dan Penghancur Sampah Di C #.” C # Pojok. Tersedia disini