メッセージ プール

このモジュールには、メッセージ プールのプラットフォーム抽象化が含まれています。

概要

Typedef

otMessageBuffer typedef
OpenThread メッセージ バッファを表します。

関数

otPlatMessagePoolFree(otInstance *aInstance, otMessageBuffer *aBuffer)
void
バッファを解放してプラットフォームが管理するバッファプールに戻すために使用されます。
otPlatMessagePoolInit(otInstance *aInstance, uint16_t aMinNumFreeBuffers, size_t aBufferSize)
void
プラットフォームに実装されたメッセージ プールを初期化します。
otPlatMessagePoolNew(otInstance *aInstance)
プラットフォームが管理するバッファプールからバッファを割り当てます。
otPlatMessagePoolNumFreeBuffers(otInstance *aInstance)
uint16_t
空きバッファの数を取得します。

構造体

otMessageBuffer

OpenThread メッセージ バッファを表します。

Typedef

otMessageBuffer

struct otMessageBuffer otMessageBuffer

OpenThread メッセージ バッファを表します。

関数

otPlatMessagePoolFree

void otPlatMessagePoolFree(
  otInstance *aInstance,
  otMessageBuffer *aBuffer
)

バッファを解放してプラットフォームが管理するバッファプールに戻すために使用されます。

OPENTHREAD_CONFIG_PLATFORM_MESSAGE_MANAGEMENT が有効な場合に使用されます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aBuffer
解放するバッファ。

otPlatMessagePoolInit

void otPlatMessagePoolInit(
  otInstance *aInstance,
  uint16_t aMinNumFreeBuffers,
  size_t aBufferSize
)

プラットフォームに実装されたメッセージ プールを初期化します。

OPENTHREAD_CONFIG_PLATFORM_MESSAGE_MANAGEMENT が有効な場合に使用されます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aMinNumFreeBuffers
OpenThread に必要な空きバッファの最小数を含む uint16。
[in] aBufferSize
バッファ オブジェクトのサイズ(バイト単位)。

otPlatMessagePoolNew

otMessageBuffer * otPlatMessagePoolNew(
  otInstance *aInstance
)

プラットフォームが管理するバッファプールからバッファを割り当てます。

OPENTHREAD_CONFIG_PLATFORM_MESSAGE_MANAGEMENT が有効な場合に使用されます。

返されるバッファ インスタンスは aBufferSize バイト以上でなければなりません(otPlatMessagePoolInit() で指定)。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
戻り値
バッファへのポインタ、または使用可能なバッファがない場合は NULL。

otPlatMessagePoolNumFreeBuffers

uint16_t otPlatMessagePoolNumFreeBuffers(
  otInstance *aInstance
)

空きバッファの数を取得します。

OPENTHREAD_CONFIG_PLATFORM_MESSAGE_MANAGEMENT が有効な場合に使用されます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
戻り値
現在空いて OpenThread で使用可能なバッファの数。

関連情報

OpenThread API リファレンスのトピックは、GitHub で入手できるソースコードに由来しています。 詳細について、またはドキュメントへの投稿については、リソースをご覧ください。