Aracılığıyla paylaş


Başvuru sayımı

Kendisini com nesnesi artık kullanılmayan düşündüğünde bir nesneyi bellekten kaldırmak otomatik olarak kullanmaya çalışmaz.Bunun yerine, nesne Programcı kullanılmayan nesneyi kaldırmanız gerekir.Programcı bir nesneye başvuru sayısı temelinde kaldırılmış olup olmadığını belirler.

com kullanan IUnknown yöntemleri, AddRef ve yayın, nesne üzerindeki arabirimler başvuru sayısı yönetmek için.Bu yöntemleri çağırmak için genel kurallar şunlardır:

  • Bir arabirim işaretçisi bir istemcinin aldığı her AddRef arabirimde çağrılmalıdır.

  • İstemci arabirimi işaretçisi kullanılarak tamamlandı olduğunda çağırması gerekir yayın.

Basit bir uygulamasında her AddRef çağrısı artırır ve her yayın azaltır nesne içinde sayacı değişkeni çağırmak.Bu sayı sıfır olarak döndüğünde, arabirim artık herhangi bir kullanıcı vardır ve kendisini bellekten kaldırmak ücretsizdir.

Böylece her nesneye (değil tek tek bir arabirim) başvuru sayılan başvuru sayımı da uygulanabilir.Bu durumda, her AddRef ve yayın çağrı merkezi uygulaması Temsilciler nesne üzerinde ve yayın sıfır başvuru sayımına ulaştığında tüm nesneyi serbest bırakabilirsiniz.

[!NOT]

Zaman bir CComObject-türetilen nesne kullanılarak oluşturulmuş Yeni operatörü, başvuru sayısı: 0.Bu nedenle, bir çaðrý AddRef başarıyla oluşturduktan sonra yapılmalıdır CComObject-nesne türetilmiş.

Ayrıca bkz.

Başvuru

COM'ye Giriş

Managing Object Lifetimes through Reference Counting