4.8.4 tpdiscon − 会話型サービスとのコネクションの切断
(1) 形式(TP1/Client/W,またはTP1/Client/Pの場合)
#include <dcvxatmi.h> int tpdiscon(DCLONG cd)
(2) 機能
会話型サービスとの間のコネクションを切断して,会話型サービスにイベント(TPEV_DISCONIMM)を通知します。
tpdiscon関数が発行された場合,コネクションはすぐに切断されます。送信先に届いていないデータは捨てられます。会話型サービスが,発行する側のトランザクションに属している場合も,tpdiscon関数を使用できます。この場合,トランザクションはロールバックします。
tpdiscon関数は,会話型サービスを開始した側(オリジネータ)からだけ発行できます。会話型サービス内では,tpdiscon関数は発行できません。また,tpdiscon関数を発行するとき,発行する側は,コネクションの制御権を持っている必要はありません。
TP1/Clientの会話型サービスは,どちらか一方のシステムが通信を完了した場合,コネクションの切断を通知するtpdiscon関数を呼び出します。
(3) UAPで値を設定する引数
-
cd
コネクションの切断を通知する会話型サービスの記述子を指定します。
(4) リターン値
エラー時には,tpdiscon関数は-1をリターンし,リターン値としてエラー情報を示す次のどれか一つの値をtperrnoに設定します。
リターン値 |
意味 |
---|---|
TPEBADDESC |
引数に誤りがあります。または,呼び出された会話型サービスの記述子になっています。 |
TPETIME |
タイムアウトが発生しました。指定された記述子は無効になります。 |
TPEPROTO |
tpdiscon関数を呼び出したときの状態が適切ではありません。 |
TPESYSTEM |
コミュニケーションリソースマネジャでエラーが発生しました。 |
TPEOS |
オペレーティングシステムでエラーが発生しました。 |
(5) 注意事項
-
OpenTP1では,TPETIMEは返されません。
-
TP1/NET/OSI-TP-Extendedを使用したOSI TP通信をする場合は,会話型サービスは使用できません。OSI TP通信で会話型サービスを使用した場合,システムの動作は保証しません。
-
TPESYSTEMが返されたとき,TP1/Clientで発生した障害の場合,エラー情報がエラーログに出力されます。
-
リターン値としてTPEOSが返されたとき,メモリ不足が原因の場合があります。TP1/Clientで発生した障害の場合,エラー情報がエラーログに出力されます。