Perbedaan Antara Dispose () Dan Finalize ()

Daftar Isi:

Perbedaan Antara Dispose () Dan Finalize ()
Perbedaan Antara Dispose () Dan Finalize ()

Video: Perbedaan Antara Dispose () Dan Finalize ()

Video: Perbedaan Antara Dispose () Dan Finalize ()
Video: Завершить vs Удалить | Вопросы для собеседования по C # 2024, Mungkin
Anonim

Perbedaan Kunci - buang () vs finalisasi ()

Perbedaan utama antara dispose () dan finalize () adalah dispose () harus secara eksplisit dipanggil oleh programmer sementara finalize () dipanggil oleh pengumpul sampah sebelum menghancurkan objek.

Dispose () adalah metode untuk menutup atau melepaskan sumber daya yang tidak terkelola seperti file, aliran yang dipegang oleh suatu objek. Finalize adalah metode untuk melakukan operasi pembersihan pada sumber daya tak terkelola yang dipegang oleh objek saat ini sebelum objek dimusnahkan.

ISI

1. Gambaran Umum dan Perbedaan Utama

2. Apa itu dispose ()

3. Apa yang difinalisasi ()

4. Persamaan Antara dispose () dan finalize ()

5. Perbandingan Berdampingan - dispose () vs finalize () dalam Bentuk Tabel

6. Ringkasan

Apa itu dispose ()?

Salah satu keuntungan terpenting dari. NET framework adalah menyediakan pengumpulan sampah otomatis. Ini secara otomatis melepaskan memori dari objek yang tidak digunakan. Dalam bahasa pemrograman seperti C dan C ++, programmer harus menangani manajemen memori sendiri. Namun dalam bahasa seperti C # yang dibangun di atas. NET framework menyediakan pengumpul sampah. Ini membantu untuk mengelola memori. Itu tidak dapat digunakan untuk melepaskan sumber daya memori yang tidak dikelola. Metode dispose () dapat digunakan untuk mencapai tugas ini.

Perbedaan antara dispose () dan finalize ()
Perbedaan antara dispose () dan finalize ()

Metode dispose () dapat digunakan untuk melepaskan sumber daya seperti koneksi database, penangan file, dll. Metode ini tidak dipanggil secara otomatis. Oleh karena itu, programmer harus menerapkan metode ini. Segera setelah metode ini dipanggil, memori untuk sumber daya tertentu yang tidak dikelola akan dirilis. Metode ini dideklarasikan dalam antarmuka IDisposeable.

Apa itu finalize ()?

Metode finalisasi hanya dipanggil oleh pengumpul sampah saat referensi ke objek tidak digunakan lebih lanjut. Metode ini dipanggil tepat sebelum menghancurkan objek. Metode ini diimplementasikan dengan bantuan destruktor. Metode finalisasi didefinisikan di kelas java.lang.object. Metode ini dinyatakan sebagai dilindungi. Itu tidak dideklarasikan sebagai publik untuk menghindari akses oleh kelas lain. Secara keseluruhan, metode finalisasi dapat meminimalkan kinerja program karena tidak membebaskan memori secara instan.

Apa Persamaan Antara dispose () dan finalize ()?

Dispose () dan finalize () bisa digunakan untuk mengosongkan memori yang dialokasikan untuk sumber daya yang tidak dikelola

Apa Perbedaan Antara dispose () dan finalize ()?

Artikel Diff Tengah sebelum Tabel

buang () vs finalisasi ()

Dispose () adalah metode untuk menutup atau melepaskan sumber daya yang tidak terkelola seperti file, aliran yang dipegang oleh suatu objek. Finalize adalah metode untuk melakukan operasi pembersihan pada sumber daya tak terkelola yang dipegang oleh objek saat ini sebelum objek dimusnahkan.
Objektif
Metode buang digunakan untuk membebaskan sumber daya yang tidak terkelola saat dipanggil. Metode finalize digunakan untuk membebaskan sumber daya yang tidak dikelola sebelum objek dimusnahkan.
Antarmuka atau Kelas yang Ditentukan
Dispose () didefinisikan dalam antarmuka IDisposable interface. Finalize () didefinisikan di kelas java.lang.object.
Metode Memohon
Metode buang dipanggil oleh programmer. Metode finalisasi dipanggil oleh pengumpul sampah.
Access Specifier
Metode pembuangan bersifat publik. Metode finalisasi dilindungi.
Kecepatan
Metode pembuangan dipanggil secara instan. Metode finalisasi dijalankan dengan lambat.
Performa
Pembuangan tidak akan meminimalkan kinerja program. Metode finalisasi mungkin meminimalkan kinerja program.

Ringkasan - dispose () vs finalize ()

Artikel ini membahas perbedaan antara membuang dan menyelesaikan metode di C #. Perbedaan antara dispose () dan finalize () adalah, dispose () harus secara eksplisit dipanggil oleh programmer sementara finalize () dipanggil oleh pengumpul sampah sebelum menghancurkan objek.

Direkomendasikan: