bea ホーム | 製品 | dev2dev | support | askBEA
BEA Logo Tuxedo
 ドキュメントのダウンロード   サイトマップ   用語集 
検索
0

Tuxedo C リファレンス

 Previous Next Contents View as PDF  

tpalloc(3c)

名前

tpalloc()−型付きバッファの割り当てを行うルーチン

形式

#include <atmi.h>
char * tpalloc(char *type, char *subtype, long size)

機能説明

tpalloc() は、type タイプのバッファを指すポインタを返します。バッファのタイプによっては、subtypesize は両方とも省略することができます。BEA Tuxedo ATMI システムには、様々なタイプのバッファが提供されており、しかもアプリケーションは自由に独自のバッファ・タイプを追加することができます。詳細については、tuxtypes(5) を参照してください。

ある特定のバッファ・タイプの tmtype_swsubtype が NULL でない場合、tpalloc() を呼び出す際に subtype を指定しなければなりません。割り当てるバッファは少なくとも size および dfltsize と同じ大きさにします。ここで、dfltsize は特定のバッファ・タイプの tmtype_sw に指定するデフォルトのバッファ・サイズです。バッファ・タイプが STRING の場合、最小は 512 バイトです。バッファ・タイプが FML あるいは VIEW の場合、最小は、1024 バイトです。

なお、type の最初の 8 バイトと subtype の最初の 16 バイトだけが有効です。

あるバッファ・タイプは使用する前に初期化が必要です。tpalloc()は、バッファが割り当てられて返される前に (BEA Tuxedo ATMI システム固有の方法で) バッファを初期化します。このため、呼び出し元から返されるバッファはすぐに使用できます。ただし、初期化ルーチンがバッファをクリアしないかぎり、そのバッファは tpalloc() によってゼロに初期化されません。

マルチスレッドのアプリケーション中のスレッドは、TPINVALIDCONTEXT を含め、どのコンテキスト状態で実行していても、tpalloc() の呼び出しを発行できます。

戻り値

正常終了の場合、tpalloc() は long ワードの適切なタイプのバッファを指すポインタを返します。それ以外の場合は NULL を返し、tperrno を設定して条件を示します。

エラー

異常終了時には、tpalloc()tperrno を次のいずれかの値に設定します。

[TPEINVAL]

無効な引数が与えられた場合 (たとえば、type が NULL である場合)。

[TPENOENT]

tmtype_sw のどのエントリも type と一致しない場合。また、subtype が NULL でなければ、subtype とも一致しない場合。

[TPEPROTO]

tpalloc() が不正なコンテキストで呼び出された場合。

[TPESYSTEM]

BEA Tuxedo システムのエラーが発生しました。エラーの正確な内容がログ・ファイルに書き込まれます。

[TPEOS]

オペレーティング・システムのエラーが発生しました。

使用法

バッファの初期化が失敗した場合、割り当てられたバッファは解放され、tpalloc() は、異常終了して NULL を返します。

この関数を、C ライブラリの malloc()realloc()、または free() と組み合わせて使用するのは避けてください (tpalloc() で割り当てたバッファを、free() を使用して解放しないでください)。

BEA Tuxedo ATMI システムの拡張に準拠したインプリメンテーションは、すべて 2 つのバッファ・タイプをサポートしています。詳細については、「C 言語アプリケーション・トランザクション・モニタ・インターフェイスについて」を参照してください。

関連項目

tpfree(3c)tprealloc(3c)tptypes(3c)

 

Back to Top Previous Next
Contact e-docsContact BEAwebmasterprivacy