Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

nl::Weave::System::Object

#include <src/system/SystemObject.h>

ObjectPool<t, n="> オブジェクトに含まれるスペースから割り当てられた参照カウントのオブジェクトを表します。</t,>

まとめ

注: このクラスのインスタンスは、関連する ObjectPool クラス テンプレートを使用してのみ作成できます。コピー コンストラクタと割り当て演算子は削除されます。参照カウント システムは、このクラスのインスタンスの保持期間をトラッキングするために使用されます。オブジェクトが最初に保持されるとき、そのオブジェクトの参照数は 1 になります。保持が増えると参照数が増加する可能性があります。オブジェクトが解放されると、参照数が減ります。参照数がゼロの場合、オブジェクトはプールにリサイクルされて再割り当てされます。利用可能なデストラクタはありません。サブクラスは、最終的な保持が解除され、オブジェクトがリサイクルされたときに、カプセル化されたすべてのリソースが解放されるように設計する必要があります。このクラスは Nest C++ スタイルに従ったコンクリートとして定義されていますが、抽象クラスと見なす必要があります。

継承

直接的な既知のサブクラス:
nl::Inet::InetLayerBasis
nl::Weave::System::タイマー

保護されるタイプ

ReleaseDeferralErrorTactic{
  kReleaseDeferralErrorTactic_Ignore,
  kReleaseDeferralErrorTactic_Release,
  kReleaseDeferralErrorTactic_Die
}
列挙型
< 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 を投稿できなかった場合の対応

パブリック属性

アプリの状態

void * AppState

オブジェクトに関連付けられたアプリ固有のデータへの汎用ポインタ。

パブリック関数

保持

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 に減ると、オブジェクトがプールに戻されます。デストラクタは呼び出されません。

Retain

void Retain(
  void
)

Increments the reference count for the Weave System Layer object.

オブジェクトはライブ状態であると想定されます。

システムレイヤ

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.

オブジェクトはライブ状態であると想定されます。

プロテクト関数

DeferredRelease

void DeferredRelease(
  ReleaseDeferralErrorTactic aTactic
)