Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Not
Etkin Şablon Kitaplığı (ATL) desteklenmeye devam eder. Ancak artık özellik eklemeyeceğiz veya belgeleri güncelleştirmeyeceğiz.
COM, nesnenin artık kullanılmadığını düşündüğü bir nesneyi bellekten otomatik olarak kaldırmaya çalışmaz. Bunun yerine, nesne programcısı kullanılmayan nesneyi kaldırmalıdır. Programcı, referans sayısına göre bir nesnenin kaldırılıp kaldırılamayacağını belirler.
COM, bir nesnedeki IUnknown arabirimlerin başvuru sayısını yönetmek için AddRef ve Release yöntemlerini kullanır. Bu yöntemleri çağırmak için genel kurallar şunlardır:
bir istemci bir arabirim işaretçisi aldığında,
AddRefarabirimde çağrılmalıdır.İstemci arabirim işaretçisini kullanmayı tamamladığında çağrısı
Releaseyapmalıdır.
Basit bir uygulamada, her AddRef çağrısı nesne içindeki bir sayaç değişkenini artırır ve her Release çağrısı onu azaltır. Sayı sıfıra döndüğünde, arabirimde artık kullanıcı yoktur ve bellekten kendisini kaldırmakta serbesttir.
Başvuru sayımı, nesneye yapılan her başvurunun (tek bir arabirime değil) sayılması için de uygulanabilir. Bu durumda, her AddRef ve Release çağrısı, nesne üzerinde merkezi bir uygulamaya yönlendirir ve Release, başvuru sayısı sıfıra ulaştığında nesnenin tamamını serbest bırakır.
Not
CComObject türetilmiş bir nesne new işleci kullanılarak oluşturulduğunda, referans sayısı 0'dır. Bu nedenle, AddRef türevli nesne başarıyla oluşturulduktan sonra, bir CComObject çağrısı yapılmalıdır.
Ayrıca bkz.
COM’a Giriş
Referans Sayımı yoluyla Nesne Yaşam Döngüsünü Yönetimi