4.8.4 tpdiscon会話型サービスとのコネクションの切断

<この項の構成>
(1) 形式(TP1/Client/W,またはTP1/Client/Pの場合)
(2) 機能
(3) UAPで値を設定する引数
(4) リターン値
(5) 注意事項

(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で値を設定する引数

(4) リターン値

エラー時には,tpdiscon関数は-1をリターンし,リターン値としてエラー情報を示す次のどれか一つの値をtperrnoに設定します。

リターン値意味
TPEBADDESC引数に誤りがあります。または,呼び出された会話型サービスの記述子になっています。
TPETIMEタイムアウトが発生しました。指定された記述子は無効になります。
TPEPROTOtpdiscon関数を呼び出したときの状態が適切ではありません。
TPESYSTEMコミュニケーションリソースマネジャでエラーが発生しました。
TPEOSオペレーティングシステムでエラーが発生しました。

(5) 注意事項