nl:: Weave:: System:: Object
#include <src/system/SystemObject.h>
Bu, ObjectPool<t, n=""> içinde bulunan alandan ayrılmış bir referansla sayılan nesneyi temsil eder. nesnesini tanımlayın. </t,>
Özet
Not: Bu sınıfın ö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ıfa ait örneklerin saklanmalarını izlemek için bir referans sayma sistemi kullanılır. Bir nesne başlangıçta tutulduğunda, referans sayısı bir olur. Ek saklama süreleri, 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 konumlandırılmak üzere havuza geri döndürülür. Yıkıcı yok. Alt sınıflar, nihai saklama işlemi iptal edildiğinde 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, Nest C++ stiline uygun olarak somut olarak tanımlansa da soyut olarak kabul edilmelidir.
Devralma
Doğrudan Bilinen Alt Sınıflar:nl::Inet::InetLayerBasis
nl::Weave::System::Timer
Korumalı türler |
|
---|---|
ReleaseDeferralErrorTactic{
|
enum < DefferRelease bir kEvent_ReleaseObj yayını yayınlayamadığında ne yapmak gerekir? |
Herkese açık özellikler |
|
---|---|
AppState
|
void *
Nesneyle ilişkili uygulamaya özel verilere genel işaretçi.
|
Herkese açık işlevler |
|
---|---|
IsRetained(const Layer & aLayer) const
|
bool
Bu nesnenin
aLayer tarafından 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
|
Korumalı türler
ReleaseDeferralErrorTactic
ReleaseDeferralErrorTactic
< DefferRelease bir kEvent_ReleaseObj yayını yayınlayamadığında ne yapmak gerekir?
Herkese açık özellikler
AppState
void * AppState
Nesneyle ilişkili uygulamaya özel verilere genel işaretçi.
Herkese açık işlevler
IsRetained
bool IsRetained( const Layer & aLayer ) const
Bu nesnenin aLayer
tarafından saklanıp saklanmadığını test edin.
Tests whether this object is retained by \c aLayer.
Eşzamanlılık güvenli.
Serbest bırak
void Release( void )
Decrements the reference count for the Weave System Layer object.
Referans sayısı sıfıra düşürülürse nesneyi havuza geri dönüştürür. Yıkıcı çağrılmaz.
Tut
void Retain( void )
Increments the reference count for the Weave System Layer object.
Nesnenin yayında 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 yayında olduğu varsayılır.