Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Catatan
Pustaka Templat Aktif (ATL) terus didukung. Namun, kami tidak lagi menambahkan fitur atau memperbarui dokumentasi.
COM sendiri tidak secara otomatis mencoba menghapus objek dari memori ketika berpikir objek tidak lagi digunakan. Sebagai gantinya, pemrogram objek harus menghapus objek yang tidak digunakan. Programmer menentukan apakah objek dapat dihapus berdasarkan jumlah referensi.
COM menggunakan IUnknown metode, AddRef dan Release, untuk mengelola jumlah referensi antarmuka pada objek. Aturan umum untuk memanggil metode ini adalah:
Setiap kali klien menerima penunjuk antarmuka,
AddRefharus dipanggil pada antarmuka.Setiap kali klien selesai menggunakan penunjuk antarmuka, klien harus memanggil
Release.
Dalam implementasi sederhana, setiap pemanggilan AddRef menambahkan dan setiap pemanggilan Release mengurangi variabel penghitung di dalam objek. Ketika jumlah kembali ke nol, antarmuka tidak lagi memiliki pengguna dan bebas untuk menghapus dirinya dari memori.
Penghitungan referensi juga dapat diimplementasikan sehingga setiap referensi ke objek (bukan ke antarmuka individual) dihitung. Dalam hal ini, setiap AddRef dan Release panggilan mendelegasikan ke implementasi pusat pada objek, dan Release membebaskan seluruh objek ketika jumlah referensinya mencapai nol.
Catatan
Ketika objek turunan dibangun dengan operator CComObject, jumlah referensi adalah 0. Oleh karena itu, panggilan ke AddRef harus dilakukan setelah berhasil membuat objek CComObject yang diturunkan.
Lihat juga
Pengantar COM
Mengelola Masa Pakai Objek melalui Penghitungan Referensi