tpdiscon
名称
会話型サービスとのコネクションの切断
形式
ANSI C,C++形式
#include <xatmi.h>
int tpdiscon(int cd)
K&R版 Cの形式
#include <xatmi.h>
int tpdiscon(cd)
int cd;
機能
関数tpdiscon()は,記述子cdで示すコネクションをすぐに切断して,他端点のコネクションにTPEV_DISCONIMMのイベントを通知します。
関数tpdiscon()は,会話を始めた側(オリジネータ)からだけしか呼び出せません。会話型サービス内でこのサービスを呼び出した記述子では,tpdiscon()は呼び出せません。むしろ,会話型サービスは,会話の一方が完了したことを意味するためにtpreturn()を使わなければなりません。同様に,会話型サービスと会話しているプログラムはtpdiscon()を使えますが,結果を確実にするために望ましい方法は,サービスにtpreturn()でコネクションを終わらせてもらうことです。
関数tpdiscon()は,コネクションをすぐに切断します(正常終了ではなく異常終了として)。送信先に届いていないデータは捨てられます。コネクションの他端点のプログラムが,呼び出し側のトランザクションに参加していても,tpdiscon()は使えます。この場合,トランザクションはロールバックします。また,tpdiscon()が呼ばれたとき,呼び出し側は,コネクションの制御権を持っている必要はありません。
『引数』
『●cd
記述子を設定します。』
リターン値
エラー時には,tpdiscon()は-1をリターンして,tperrnoにエラーの状態を示す値を設定します。
エラー
次のような場合,tpdiscon()はエラーリターンして,次のうちどれか一つの値をtperrnoに設定します。
リターン値 | リターン値(数値) | 意味 |
---|---|---|
TPEBADDESC | 2 | 引数cdが間違っているか,または,呼び出された会話型サービスの記述子です。 |
TPEOS | 7 | オペレーティングシステムにエラーが起こりました。厳密なエラーの性質は,product-specificな方法で定義されます。 |
TPEPROTO | 9 | tpdiscon()が間違った状況で呼ばれました。 |
TPESYSTEM | 12 | コミュニケーションリソースマネジャシステムでエラーが起こりました。厳密なエラーの性質は,product-specificな方法で定義されます。 |
TPETIME | 13 | タイムアウトが起こりました。この記述子は無効になります。 |
関連項目
tpconnect(),tprecv(),tpreturn(),tpsend()
『OpenTP1で使う場合の注意事項』