nl:: Weave:: System:: Object
#include <src/system/SystemObject.h>
ค่านี้แสดงออบเจ็กต์จำนวนอ้างอิงที่จัดสรรจากพื้นที่ที่มีอยู่ในออบเจ็กต์ ObjectPool<t, n=""> </t,>
สรุป
หมายเหตุ: อินสแตนซ์ของคลาสนี้จะสร้างขึ้นโดยใช้เทมเพลตคลาส ObjectPool ที่เกี่ยวข้องเท่านั้น ระบบจะลบตัวสร้างการคัดลอกและโอเปอเรเตอร์การมอบหมาย ระบบนับข้อมูลอ้างอิงใช้เพื่อติดตามการเก็บรักษาอินสแตนซ์ของคลาสนี้ เมื่อมีการเก็บรักษาออบเจ็กต์ครั้งแรก จำนวนการอ้างอิงคือ 1 การเก็บรักษาเพิ่มเติมอาจทำให้จำนวนข้อมูลอ้างอิงเพิ่มขึ้น เมื่อมีการปล่อยออบเจ็กต์ จำนวนการอ้างอิงจะลดลง เมื่อจำนวนการอ้างอิงเป็น 0 ระบบจะนำออบเจ็กต์กลับไปที่พูลเพื่อจัดสรรใหม่ ไม่มีตัวทำลายที่ใช้ได้ คลาสย่อยต้องออกแบบให้ปล่อยทรัพยากรที่ปกปิดไว้ทั้งหมดเมื่อปล่อยการเก็บรักษาขั้นสุดท้ายและนำวัตถุกลับคืนมาแล้ว แม้ว่าคลาสนี้จะได้รับการกำหนดเป็นคอนกรีต แต่สอดคล้องกับรูปแบบ Nest C++ แต่ก็ควรพิจารณาว่าเป็นนามธรรม
การสืบทอด
คลาสย่อยที่รู้จักโดยตรง:nl::Inet::InetLayerBasis
nl::Weave::System::Timer
ประเภทที่ได้รับการป้องกัน |
|
---|---|
ReleaseDeferralErrorTactic{
|
enum < สิ่งที่ต้องทำเมื่อ DeferredRelease โพสต์ kEvent_ReleaseObj ไม่สำเร็จ |
แอตทริบิวต์สาธารณะ |
|
---|---|
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
< สิ่งที่ต้องทำเมื่อ DeferredRelease โพสต์ kEvent_ReleaseObj ไม่สำเร็จ
แอตทริบิวต์สาธารณะ
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.
นำวัตถุกลับไปที่พูลหากมีการลดจำนวนการอ้างอิงเป็น 0 ไม่มีการเรียกใช้ตัวทำลาย
เก็บไว้
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.
ระบบถือว่าออบเจ็กต์พร้อมใช้งาน