nl::Weave::System::Object

#include <src/system/SystemObject.h>

これは、ObjectPool<t, n=""> に含まれる空間から割り当てられた参照カウント オブジェクトを表します。渡されます。&lt;/t,&gt;

概要

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

継承

直系の既知のサブクラス:
  nl::Inet::InetLayerBasis
  nl::Weave::System::Timer

保護されているタイプ

ReleaseDeferralErrorTactic{
  kReleaseDeferralErrorTactic_Ignore,
  kReleaseDeferralErrorTactic_Release,
  kReleaseDeferralErrorTactic_Die
}
enum
<DeferredRelease が kEvent_ReleaseObj の POST に失敗した場合の対処方法

パブリック属性

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 の POST に失敗した場合の対処方法

パブリック属性

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.

オブジェクトはライブであるとみなされます。

プロテクト関数

DeferredRelease

void DeferredRelease(
  ReleaseDeferralErrorTactic aTactic
)