nl:: Weave:: System:: Object
#include <src/system/SystemObject.h>
Bu, bir ObjectPool<t, n=""> nesnesinde yer alan alandan ayrılmış referans sayılan bir nesneyi temsil eder. </t,>
Özet
Not: Bu sınıf örneği yalnızca ilgili ObjectPool sınıf şablonu kullanılarak oluşturulabilir. Kopya oluşturucu ve atama operatörü silinir. Bu sınıfın örneklerinin saklama kayıtlarını izlemek için bir referans sayma sistemi kullanılır. Bir nesne ilk kez saklandığında referans sayısı bir olur. Ek saklamalar referans sayısını artırabilir. Nesne serbest bırakıldığında referans sayısı azalır. Referans sayısı sıfır olduğunda nesne yeniden kullanılmak üzere havuza geri gönderilir. Yıkıcı yok. Alt sınıflar, nihai saklama süresi kullanıma sunulduğunda ve nesne geri dönüştürüldüğünde kapsüllenmiş tüm kaynakların serbest bırakılmasını sağlayacak şekilde tasarlanmalıdır. Bu sınıf somut olarak tanımlansa da, Nest C++ stiline uygun olarak soyut olarak kabul edilmelidir.
Devralma
Doğrudan Bilinen Alt Sınıflar:nl::Inet::InetLayerBasis
nl::Weave::System::Timer
Korunan türler |
|
---|---|
ReleaseDeferralErrorTactic{
|
enum < DefferRelease, kEvent_ReleaseObj yayınlayamazsa ne yapmalıyım? |
Herkese açık özellikler |
|
---|---|
AppState
|
void *
Nesneyle ilişkilendirilen uygulamaya özel verilere genel işaretçi.
|
Kamu işlevleri |
|
---|---|
IsRetained(const Layer & aLayer) const
|
bool
Bu nesnenin
aLayer tarihine kadar saklanıp saklanmadığını test edin. |
Release(void)
|
void
Decrements the reference count for the Weave System Layer object. |
Retain(void)
|
void
Increments the reference count for the Weave System Layer object. |
SystemLayer(void) const
|
Layer &
Returns a reference to the Weave System Layer object provided when the object was initially retained from its corresponding object pool instance. |
Korunan işlevler |
|
---|---|
DeferredRelease(ReleaseDeferralErrorTactic aTactic)
|
void
|
Korunan türler
ReleaseDeferralErrorTactic
ReleaseDeferralErrorTactic
< DefferRelease, kEvent_ReleaseObj yayınlayamazsa ne yapmalıyım?
Herkese açık özellikler
AppState
void * AppState
Nesneyle ilişkilendirilen uygulamaya özel verilere genel işaretçi.
Kamu işlevleri
IsRetained
bool IsRetained( const Layer & aLayer ) const
Bu nesnenin aLayer
tarihine kadar saklanıp saklanmadığını test edin.
Tests whether this object is retained by \c aLayer.
Eş zamanlılık açısından güvenli.
Lansman
void Release( void )
Decrements the reference count for the Weave System Layer object.
Referans sayısı sıfıra düşürülürse nesneyi tekrar havuza dönüştürür. Hiçbir yıkıcı çağrılmaz.
Koru
void Retain( void )
Increments the reference count for the Weave System Layer object.
Nesnenin aktif olduğu varsayılır.
SystemLayer
Layer & SystemLayer( void ) const
Returns a reference to the Weave System Layer object provided when the object was initially retained from its corresponding object pool instance.
Nesnenin aktif olduğu varsayılır.