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

Tuxedo C リファレンス

 Previous Next Contents View as PDF  

Uunix_err(3c)

名前

Uunix_err()−UNIX システム・コール・エラーの出力

形式

#include Uunix.h 

void Uunix_err(s)
char *s;

機能説明

BEA Tuxedo ATMI システムの関数が UNIX システム・コールを呼び出したときに、そのシステム・コールがエラーを検出すると、エラーが返されます。外部整数 Uunixerr() が、そのエラーを返したシステム・コールを示す値 (Uunix.h に定義されています) に設定されます。さらに、このシステム・コールは、errno() を失敗した理由を示す値 (errno.h に定義されています) に設定します。

Uunix_err() 関数は、BEA Tuxedo ATMI システムの関数の呼び出し中に最後に検出したシステム・コールを示すメッセージを標準エラー出力に書き出します。この関数は引数を 1 つ (文字列) をとります。この関数はこの引数文字列に続いて、コロンと空白、失敗したシステム・コールの名前、失敗の理由、そして改行文字を書き出します。さまざまな利用形態を考慮して、この引数文字列には、エラーを出したプログラムの名前も含めておくようにしてください。システム・コールのエラー番号は外部変数 Uunixerr() からとられ、そのエラーの理由は errno() から取り込まれます。どちらの変数も、エラーが発生した時点で設定されます。これらの変数はエラーのない呼び出しが行われたときにクリアされます。

メッセージの多彩な形式を単純化するため、次のようなメッセージ文字列の配列

extern char *Uunixmsg[]; 

が提供されます。Uunixerr() は、このテーブルへのインデックスとして使用し、失敗したシステム・コールの名前を (改行文字なしで) 取り込むことができます

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

使用例

#include Uunix.h 
extern int Uunixerr, errno;

..........
if((fd=open(“myfile”, 3, 0660)) == -1)
       { 
Uunixerr = UOPEN;
Uunix_err(“myprog”);
exit(1);
}

 

Back to Top Previous Next
Contact e-docsContact BEAwebmasterprivacy