Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 プログラム作成リファレンス C言語編


tpfree

〈このページの構成〉

名称

型付きバッファの解放

形式

ANSI C,C++の形式

#include <xatmi.h>
void  tpfree(char *ptr)

K&R版 Cの形式

#include <xatmi.h>
void  tpfree(ptr)
char    *ptr;

機能

関数tpfree()の引数は,以前にtpalloc()やtprealloc()で取得したバッファへのポインタです。ptrがNULLの場合は,何もしません。ptrが型付きバッファへのポインタでない場合(または,tpfree()で,事前に解放されていた場合),関数を呼び出した結果は不確定です。サービス関数内では,ptrがサービス関数に渡されたバッファを指す場合,tpfree()はバッファを解放しないでリターンします。

情報を要求していたり,データと結び付いているバッファ型は,バッファの解放と同時にそれらも削除されます。tpfree()は,バッファが解放される前にこれらの結び付きを削除します(その方法は,コミュニケーションリソースマネジャで規定)。

いったんtpfree()がリターンしたあとで,ptrを引数としてXATMI関数に渡したり,ほかの定義に使ったりしないでください。

『引数』

『●ptr

tpalloc()やtprealloc()で割り当てたバッファへのポインタを設定します。』

リターン値

tpfree()は,呼び出し元には何も値を返しません。そのため,void型の宣言となっています。

アプリケーションの使い方

この関数は,Cライブラリのmalloc(),realloc(),free()と一緒には使わないでください(例えば,tpalloc()で割り当てたバッファは,free()で解放しないでください)。

関連項目

tpalloc(),tprealloc()

『OpenTP1で使う場合の注意事項』

  1. 『OSI TP通信をするXATMIのエラーは,従来のTCP/IPとエラー動作が異なる場合があります。』