nl:: Weave:: System:: Object
#include <src/system/SystemObject.h>
يمثل هذا كائنًا تم حسابه كمرجع وتخصيصه من مساحة مضمنة في ObjectPool<t, n=""> الخاص بك. </t,>
ملخّص
ملاحظة:لا يمكن إنشاء مثيل من هذه الفئة إلا باستخدام نموذج فئة ObjectPool ذي الصلة. يتم حذف الدالة الإنشائية للنسخ وعامل التعيين. يتم استخدام نظام احتساب المراجع لتتبع الاحتفاظ بالمثيلات من هذه الفئة. عندما يتم الاحتفاظ بأحد العناصر في البداية، يكون عدد المراجع الخاصة به واحدًا. قد تؤدي عمليات الاحتفاظ بالبيانات الإضافية إلى زيادة عدد المراجع. وعند تحرير العنصر، يتم تقليل عدد المراجع. عندما يكون عدد المراجع صفرًا، يُعاد تدوير العنصر إلى وحدة التجميع لإعادة تخصيصه. لا توجد أداة تدمير متاحة. يجب تصميم الفئات الفرعية لضمان إطلاق جميع الموارد المغلفة عند تحرير التغليف النهائي وإعادة تدوير العنصر. على الرغم من أنّ هذه الفئة مُصنَّفة على أنّها خرسانية، إلا أنّها تتوافق مع نمط Nest C++ ، إلا أنّه يجب اعتبارها مجردة.
الاكتساب
الفئات الفرعية المعروفة المباشرة:nl::Inet::InetLayerBasis
nl::Weave::System::Timer
الأنواع المحمية |
|
---|---|
ReleaseDeferralErrorTactic{
|
تعداد < ما يجب فعله عند تعذُّر نشر kEvent_ReleaseObj في DeferredRelease. |
السمات العامة |
|
---|---|
AppState
|
void *
مؤشر عام يشير إلى البيانات الخاصة بالتطبيق المرتبطة بالعنصر.
|
وظائف عامة |
|
---|---|
IsRetained(const Layer & aLayer) const
|
bool
يمكنك اختبار ما إذا كان سيتم الاحتفاظ بهذا العنصر من خلال
aLayer . |
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. |
الدوال المحمية |
|
---|---|
DeferredRelease(ReleaseDeferralErrorTactic aTactic)
|
void
|
الأنواع المحمية
ReleaseDeferralErrorTactic
ReleaseDeferralErrorTactic
< ما يجب فعله عند تعذُّر نشر kEvent_ReleaseObj في DeferredRelease.
السمات العامة
AppState
void * AppState
مؤشر عام يشير إلى البيانات الخاصة بالتطبيق المرتبطة بالعنصر.
وظائف عامة
IsRetained
bool IsRetained( const Layer & aLayer ) const
يمكنك اختبار ما إذا كان سيتم الاحتفاظ بهذا العنصر من خلال aLayer
.
Tests whether this object is retained by \c aLayer.
يمكنك استخدام التزامن بأمان.
الإصدار
void Release( void )
Decrements the reference count for the Weave System Layer object.
إعادة تدوير العنصر إلى مجموعة إذا تم تقليل عدد المراجع إلى صفر. لم يتم استدعاء أي عامل تدمير.
الاحتفاظ
void Retain( void )
Increments the reference count for the Weave System Layer object.
ومن المفترض أن يكون الكائن حيًا.
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.
ومن المفترض أن يكون الكائن حيًا.