メインページ | モジュール | 名前空間一覧 | クラス階層 | 構成 | ファイル一覧 | 名前空間メンバ | 構成メンバ | ファイルメンバ | 関連ページ

クラス テンプレートtoppers::vmempool< Id, Diagnostics, Stub > の解説
[カーネルオブジェクト管理]

可変長メモリプールの機能をカプセル化したテンプレートクラス [詳細]

#include <toppers/vmempool.hpp>

すべてのメンバ一覧

Public メンバ関数

コンストラクタ
 vmempool ()
 デフォルトコンストラクタ

 vmempool (ID id)
 ID番号指定のコンストラクタ.

template<ID Id2, class Diagnostics2, class Stub2>  vmempool (const vmempool< Id2, Diagnostics2, Stub2 > &other)
 テンプレート引数違いの変換コンストラクタ

生成と削除
ER create (const creation *pk_cobj)
 可変長メモリプールの生成

ER create (ATR mplatr=TA_TFIFO, UINT mplsz=1024, VP mpl=0)
 可変長メモリプールの生成(個別のフィールド指定)

ER destroy ()
 可変長メモリプールの削除

状態参照
ER refer (reference *pk_robj) const
 可変長メモリプールの状態参照

メモリブロックの獲得と解放
ER get (UINT blksz, VP *p_blk, forever_tag=forever) const
 可変長メモリブロックの獲得

ER get (UINT blksz, VP *p_blk, polling_tag) const
 可変長メモリブロックの獲得(ポーリング)

ER get (UINT blksz, VP *p_blk, TMO tmout) const
 可変長メモリブロックの獲得(タイムアウト指定)

ER release (VP blk) const
 可変長メモリブロックの解放


フレンド

ID get_unsafe_id (const vmempool< Id, Diagnostics, Stub > &obj)
 可変長メモリプールID番号の取得


解説

template<ID Id = 0, class Diagnostics = TOPPERS_DEFAULT_DIAGNOSTICS, class Stub = TOPPERS_DEFAULT_STUB>
class toppers::vmempool< Id, Diagnostics, Stub >

  vmempool テンプレートクラスは、可変長メモリプールをカプセル化するとともに、 他のメモリプールと交換可能なインタフェースを提供している。

注意:
このテンプレートクラスは拡張サービスコールを使用しているため、 スタンダードプロファイル準拠のカーネル上ではコンパイルエラーになる。
参照:
fmempool